
あれ?思ったより安いかも?新しくなったAWS Security Hubの料金情報を調べてみた
こんにちは、AWS事業本部@福岡オフィスのべこみん(@beco_minn)です。
みなさん、新しくなったAWS Security Hub(以下、Security Hub)の料金体系は把握しましたか?
先日のAWS re:Invent 2025でGA(一般提供開始)になったSecurity Hubですが、その名の通り様々なセキュリティサービスのハブのような機能とダッシュボードが利用出来るようになりました。
新しくなったSecurity Hubの機能等については以下の記事をご参照ください。
しかし、多機能になった一方でその複雑な料金体系に戸惑った方もいるのではないでしょうか。
今回はそんなSecurity Hubの料金体系について私なりに深掘りしてみました。
先にまとめ
先にSecurity Hubの料金体系について分かったことをまとめます。
- 新しくなったSecurity Hubの利用には料金が発生するが、お得に利用できるケースもある
- その料金は主にEC2インスタンス、Lambda関数、ECRイメージ、IAMユーザー/ロールなどのリソース数に応じての従量課金
- AWS Security Hub CSPMなどの機能も含まれているが、それらのチェック料金は発生しない
- 「essentials plan」と呼ばれる必須の料金体系とアドオン機能に伴って発生する料金体系が存在する
- AWS Price List Query API上では、Security HubとSecurity Hub CSPMは同じサービス
AWSSecurityHubとして料金が定義されている
また以下postにあるように、GA前にプレビュー版を利用されていた方は意図的に利用を開始しない限りは 2026/01/15 に自動で無効化されるとのことです。
essentials plan(必須プラン)
essentials planは、Security Hubの利用に必要最低限な機能が入った、デフォルトの料金プランです。
定額ではなく、下記リソースに応じての従量課金となっています。
料金表(東京リージョン)
| リソースタイプ | リソースユニット換算 |
|---|---|
| EC2インスタンス | 1インスタンス = 1ユニット |
| Lambda関数 | 12関数 = 1ユニット |
| ECRコンテナイメージ | 18イメージ = 1ユニット |
| IAMユーザー/ロール | 125個 = 1ユニット |
上記のようにリソースごとに一定の数量でユニットと呼ばれる単位で換算され、1ユニットあたり月に 4.10 USD が発生します。
料金試算例
例えば、以下のような環境の場合:
- EC2インスタンス: 10台
- Lambda関数: 24個
- ECRイメージ: 36個
- IAMユーザー/ロール: 250個
| リソース | 数量 | リソースユニット | 月額料金 (USD) |
|---|---|---|---|
| EC2インスタンス | 10台 | 10 | $41.00 |
| Lambda関数 | 24個 | 2 (24÷12) | $8.20 |
| ECRイメージ | 36個 | 2 (36÷18) | $8.20 |
| IAMユーザー/ロール | 250個 | 2 (250÷125) | $8.20 |
| 合計 | - | - | $65.6 |
アドオン: threat analytics plan(脅威分析プラン)
threat analytics planは、Amazon GuardDutyを活用した脅威検出機能を追加するオプションです。GuardDutyの料金と同様にCloudTrailイベントや各種ログの分析量に応じて料金が発生します。
料金表(東京リージョン)
| 項目 | 料金 (USD) |
|---|---|
| CloudTrail 管理イベント | $4.00 / 100万イベント |
| 各種ログ(最初の1,000 GB/月) | $0.55 / GB |
| 各種ログ(次の9,000 GB/月) | $0.55 / GB |
| 各種ログ(10,000 GB/月以上) | $0.55 / GB |
※各種ログには、Amazon VPCフローログ、Amazon Route 53 DNSクエリログ、Amazon S3データイベント、Amazon EKS監査ログ、AWS Lambdaネットワークログが含まれます。
料金試算例
例えば、以下のような環境の場合:
- CloudTrail 管理イベント: 月間 500万イベント
- VPCフローログ、DNSログなどの各種ログ: 月間 1,500 GB
| 項目 | 使用量 | 料金計算 | 月額料金 (USD) |
|---|---|---|---|
| CloudTrail 管理イベント | 500万イベント | 5 × $4.00 | $20.00 |
| 各種ログ(0-1,000 GB) | 1,000 GB | 1,000 × $0.55 | $550.00 |
| 各種ログ(1,000-10,000 GB) | 500 GB | 500 × $0.55 | $275.00 |
| 合計 | - | - | $845.00 |
アドオン: AWS Lambda code scanning
Lambda code scanningは、Amazon InspectorでのLambda関数コードの脆弱性スキャン機能を追加するオプションです。監視対象のLambda関数の数に応じて料金が発生します。
料金表(東京リージョン)
| 項目 | *料金 (USD) |
|---|---|
| Lambda関数スキャン | $0.45/関数 |
料金試算例
Lambda関数50個をコードスキャンする場合:
| 関数数 | 月額単価 (USD) | 月額料金 (USD) |
|---|---|---|
| 50 | $0.45 | $22.50 |
それでは、ここからは上記内容を調査した手順についてご紹介します。
マネジメントコンソールから料金を確認する
まずは実際にサービスのコンソールを見てみましょう。
AWS Security Hubのコンソールには「料金を見積もる」機能が用意されています。
まずはAWS Security Hubのコンソールにアクセスします。新しいSecurity Hubの使用を開始してみましょう。

使用を開始すると、下図のような有効化画面が表示されます。

大きく4つのセクションに分かれています。
- Security capabilities
- 各種設定
- リージョン
- 適用リージョンの選択
- リソースタグ
- Pricing in the new Security Hub
1リージョンの有効化画面で適用リージョンが選択出来るのは嬉しいですね!全リージョンが選択出来るのは最高です。
デフォルトでは全ての機能が有効化されているようです。デフォルトの状態だとかなり高額な料金になってしまうため、以下のように料金が発生する機能を絞って有効化することも可能です。

有効化後でも下図の設定画面赤枠部から機能単位での有効/無効を設定出来ますのでご安心ください。

少し設定面へ話が逸れてしまいましたので、ここからまた料金の話に戻りましょう。
少々複雑な料金体系のSecurity Hubですが、Pricing in the new Security Hubセクションの「View estimates」(下図赤枠部)を押すと、料金試算ツールを利用することが出来ます。

こちらについては以下の記事で紹介されていますので、是非ご参照ください。少々入力項目は多いですが、Security Hubを使う場合と各セキュリティサービスをそのまま使う場合での料金比較を行うことが出来ます。
コンソール上から分かることはこんなところでしょうか、それでは次に公式ドキュメントを覗いてみましょう。
公式ドキュメントから料金を確認する
今回は新サービスだったこともありマネジメントコンソールから確認しましたが、AWSサービスの料金を確認する場合はまず公式ドキュメントから確認するのが定石です。
本記事執筆時点では英語版しか更新されていないようですが、いくつかのプランに分かれた表や試算例もあるため比較的分かりやすい資料になっています。
どうやら新しいSecurity Hubには以下のプランがあるようです。
- Security Hub essentials plan
- Security Hub threat analytics plan
- AWS Lambda code scanning
それぞれのプラン内容を確認しましょう。
Security Hub essentials plan(必須プラン)
Security Hub essentials planは、新しいSecurity Hubを利用する上で必須となるベースプランです。このプランには、リスク分析、脆弱性管理、AWS Security Hub CSPMの機能なども含まれているようです。
料金体系は「リソースごとの統合課金」となっており、従来のように各機能に対して個別に課金されるのではなく、後述する監視対象リソース数に応じた料金となっています。
つまり、従来の通常利用では各セキュリティ機能ごとに個別に課金されていましたが、essentials planでは特定リソース数に応じての従量課金となっています。昨今流行りのオールインクルーシブよろしく、様々な機能が含まれているんですね。
以下の表は、essentials planに含まれる機能と、従来の通常利用との比較です。
| 機能 | サービス | 通常利用 | Security Hub essentials plan |
|---|---|---|---|
| リスクと露出の分析 | AWS Security Hub | - (利用不可) | 含まれる |
| リソースインベントリ | AWS Security Hub | - (利用不可) | 含まれる |
| ワークフロー自動化 | AWS Security Hub | - (利用不可) | 含まれる |
| 自動化ルール | AWS Security Hub CSPM | 100万ルール評価ごとに料金発生 | 含まれる |
| 検出結果の取り込みイベント | AWS Security Hub CSPM | 最初の10,000件は無料 10,000件超過分はイベントごとに料金発生 |
含まれる |
| 態勢管理(CSPM) | AWS Security Hub CSPM | チェックごとに料金発生 | 含まれる |
| EC2脆弱性スキャン | Amazon Inspector | インスタンスごとに料金発生 | 含まれる |
| EC2 CISベンチマーク評価 | Amazon Inspector | インスタンスの評価ごとに料金発生 | 含まれる |
| ECR脆弱性スキャン | Amazon Inspector | イメージごと(プッシュ時) 再スキャンごと(保持イメージ) に料金発生 |
含まれる |
| Lambda脆弱性スキャン | Amazon Inspector | Lambda関数ごとに料金発生 | 含まれる |
| EC2/EBSマルウェア保護 | Amazon GuardDuty | GBごとに料金発生 | 含まれる |
「リスクと露出の分析」などの一部機能はSecurity Hub特有の機能なので、そもそもSecurity Hubを利用しないと(essentials planでないと)利用不可となっています。
Security Hub threat analytics plan(脅威分析プラン)
threat analytics planは、essentials planに追加できるオプションプランです。Amazon GuardDutyを活用した脅威検出機能を提供します。
※このプランを利用するには、Security Hub essentials planが必要です。
| 機能 | サービス | 通常利用 | Security Hub threat analytics plan |
|---|---|---|---|
| CloudTrail脅威分析 | Amazon GuardDuty | 100万イベントごとに料金発生 | 100万イベントごとに料金発生 |
| VPC & DNSログ脅威分析 | Amazon GuardDuty | GBごとに料金発生 | GBごとに料金発生 |
| S3脅威分析 | Amazon GuardDuty | 100万イベントごとに料金発生 | GBごとに料金発生 |
| EKS脅威分析 | Amazon GuardDuty | 100万イベントごと | GBごとに料金発生 |
| Lambda脅威分析 | Amazon GuardDuty | GBごとに料金発生 | GBごとに料金発生 |
ほとんど料金体系は同じですが、いくつかGBごとの従量課金になっていますね。
AWS Lambda code scanning(Lambdaコードスキャン)
Lambda code scanningは、Amazon Inspectorを利用してLambda関数のコード内の脆弱性を検出する機能です。
※この機能を利用するには、Security Hub essentials planが必要です。
| 機能 | サービス | 通常利用 | Lambda code scanning(essentials必須) |
|---|---|---|---|
| Lambdaコードスキャン | Amazon Inspector | Lambda関数ごとに料金発生 | Lambda関数ごとに料金発生 |
こちらは全く同じ料金体系のようです。特別な料金体系ではないのでplanという名称が付いていないのかもしれないですね。
公式ドキュメントから分かる料金
ここまでは各種プランの内容について確認しました。では実際の料金はどうなっているのでしょうか。
まずはessentials planです。
essentials planの料金(東京リージョン)
essentials planは、監視対象リソースの平均数に基づいて課金されます。料金はAmazon EC2インスタンスを基準(1リソースユニット)としており、他のリソースタイプはそれに対する比率で換算されます。
| リソース | 課金単位 | 料金(USD) |
|---|---|---|
| リソースユニット | 月間平均リソースユニット数 | $4.10 / リソースユニット |
リソースユニット換算表:
| リソースタイプ | 換算比率 |
|---|---|
| EC2インスタンス | 1インスタンス = 1ユニット |
| Lambda関数 | 12関数 = 1ユニット |
| ECRコンテナイメージ | 18イメージ = 1ユニット |
| IAMユーザー/ロール | 125個 = 1ユニット |
料金は月単位で書かれていますが、時間単位での按分計算がされるようです。
また、4つの主要リソースタイプ(EC2インスタンス、ECRコンテナイメージ、Lambda関数、IAMユーザー/ロール)のみがリソースごとの料金対象です。ログなどのその他監視対象リソースは監視されますが、それらのリソース量に応じての料金は発生しないようです。
料金試算例(essentials plan)
例えば、以下のような環境の場合:
- EC2インスタンス: 10台
- Lambda関数: 24個
- ECRイメージ: 36個
- IAMユーザー/ロール: 250個
| リソース | 数量 | リソースユニット | 月額料金(USD) |
|---|---|---|---|
| EC2インスタンス | 10台 | 10.00 | $41.00 |
| Lambda関数 | 24個 | 2.00(24÷12) | $8.20 |
| ECRイメージ | 36個 | 2.00(36÷18) | $8.20 |
| IAMユーザー/ロール | 250個 | 2.00(250÷125) | $8.20 |
| 合計 | - | 16.00 | $65.60 |
のようになります。
更にFAQには下記の細かい仕様が書かれていました。
EC2 インスタンス:
EC2 インスタンスの平均数 = (アクティブインスタンスの合計時間 / 月間時間数、つまり 720 時間)。例えば、ある月にアクティブ時間が異なる 3 つのインスタンスがあるとします。
1 つ目は 360 時間、2 つ目は 350 時間、3 つ目は 10 時間で、アクティブインスタンスの合計時間は 720 時間になります。
したがって、その月にスキャンされたインスタンスの合計時間 720 時間 / 月間 720 時間 = 平均 1 個の EC2 インスタンスとなります。
コンテナイメージ:
スキャンされたコンテナイメージの数 = 毎月 Amazon ECR にプッシュされるコンテナイメージの数と、Amazon Inspector の再スキャン設定に基づいてその月の再スキャン対象となっているコンテナイメージの数を足した数。Amazon Inspector は、Amazon ECR にプッシュされた各コンテナイメージの初期スキャンを実行します。
さらに、Amazon Inspector は、イメージのプッシュ日、イメージのプル日、およびイメージの最終使用日に設定した時間枠に基づいて、コンテナイメージを再スキャンし、新しい脆弱性がないか確認します。
例: Amazon ECR リポジトリに 5,000 個のイメージがあり、1 か月間に 500 個の追加イメージを Amazon ECR にプッシュしたとします。最終使用日に基づいて 14 日間のイメージモニタリングを設定しました。その月の間に、リポジトリからの 75 個のコンテナイメージが Amazon ECS または Amazon EKS クラスターにデプロイされます。Amazon Inspector は、設定した期間内で各イメージが実際にモニタリングされた期間に基づいてモニタリングおよび課金します。これには、使用中の 75 個のアクティブなイメージと、それぞれのモニタリング期間に新しくプッシュされた 500 個のイメージの両方が含まれます。料金は、必ずしも月全体ではなく、各画像が実際に監視されている時間(デフォルトでは最大 14 日間)に対してのみ適用されることに注意してください。この監視期間は、ニーズに応じてカスタマイズできます。
Lambda 関数:
対象となる Lambda 関数は、$LATEST とマークされ、過去 90 日間に呼び出された、または更新された関数です。
Lambda 関数の平均数 = (Lambda 関数の Security Hub カバレッジの合計時間) / (1 か月の時間数、つまり 720 時間)。
Security Hub カバレッジ時間は、Lambda 関数がデプロイされてから削除されるまでの時間を表します。
例:ある月に Security Hub によって異なる時間数で監視された Lambda 関数が 3 つデプロイされていたとします。1 つ目は 720 時間、2 つ目は 350 時間、3 つ目は 10 時間で、デプロイされた Lambda 関数の合計スキャン時間は 1,080 時間になります。したがって、その月にスキャンされた Lambda 関数の合計時間 1,080 時間 / その月の 720 時間 = 平均 1.5 個の Lambda 関数となります。
IAM ユーザーとロール:
IAM ユーザーとロールの平均数 = 月中に存在した IAM ユーザーまたはロールの数 (日割り計算)。
次にオプションの追加プランです。
オプション追加プランの料金(東京リージョン)
essentials planに追加できるオプションプランの料金は以下の通りです。
threat analytics plan(Amazon GuardDuty活用):
| リソース | 課金単位 | 料金(USD) |
|---|---|---|
| CloudTrail管理イベントの脅威分析 | 100万イベント | $4.72 / 100万イベント |
| データイベント・ネットワーク活動等の脅威分析(0〜1,000 GB) | GB | $0.649 / GB |
| データイベント・ネットワーク活動等の脅威分析(1,000〜10,000 GB) | GB | $0.295 / GB |
| データイベント・ネットワーク活動等の脅威分析(10,000 GB超) | GB | $0.118 / GB |
※データイベント・ネットワーク活動等には、Amazon VPCフローログ、Amazon Route 53 DNSクエリログ、Amazon S3データイベント(100万イベント = 2 GB)、Amazon EKS監査ログ(100万イベント = 2.2 GB)、AWS Lambdaネットワークログが含まれます。
AWS Lambda code scanning(Amazon Inspector活用):
| リソース | 課金単位 | 料金(USD) |
|---|---|---|
| Lambda関数コードスキャン | 月間平均のコードスキャン有効化関数数 | $0.495 / 関数 |
※Lambda code scanningを有効化すると、essentials planのLambda基本料金に加えて、関数ごとのコードスキャン料金が追加されます。
料金試算例(オプションプラン含む)
essentials planに加えて、threat analytics planとLambda code scanningも利用する場合:
前提条件:
- essentials plan: 上記と同じ構成($65.60)
- CloudTrail管理イベント: 月間500万イベント
- VPCフローログ等: 月間1,500 GB
- Lambda code scanning: 20関数で有効化
| 項目 | 使用量 | 料金計算 | 月額料金(USD) |
|---|---|---|---|
| essentials plan | - | - | $65.60 |
| CloudTrail脅威分析 | 500万イベント | 5 × $4.72 | $23.60 |
| ログ脅威分析(0〜1,000 GB) | 1,000 GB | 1,000 × $0.649 | $649.00 |
| ログ脅威分析(1,000〜10,000 GB) | 500 GB | 500 × $0.295 | $147.50 |
| Lambda code scanning | 20関数 | 20 × $0.495 | $9.90 |
| 合計 | - | - | $895.60 |
AWS Price List Query APIで料金を確認する
ここまででほとんどの料金情報は分かりましたが、今回は新サービスなのでAWS Price List Query APIでより詳細な料金情報を見てみましょう。
AWSの各サービスの料金情報はAPIで取得出来るようになっています。このAPIで取得出来る料金単位やはAWS Cost Explorerでも利用されていますね。
AWS Pricing List Query APIの詳細は以下ドキュメントをご参照ください。
サービス情報の取得
先日開催されたAWS re:Inforce 2025で、AWS Security Hubは今回の新しいSecurity HubとSecurity Hub CSPMの2つに分かれました。
今回確認したいSecurity HubとCSPMは料金上では同じサービスとして扱われているのか?が気になったので、今回はまずサービスの特定から実施しました。
$ aws pricing describe-services --region us-east-1 --query 'Services[].ServiceCode' --output text | tr '\t' '\n' | grep -i security
AWSSecurityHub
AmazonSecurityLake
※Pricing APIはus-east-1リージョンでのみ利用可能なため、--region us-east-1を指定する必要があります。
「security」を含むサービスで調べてみたところ、「AWSSecurityHub」と「AmazonSecurityLake」のみがヒットしました。ということはSecurity HubもCSPMも同じサービスとして料金が定義されているようです。
続いて、「AWSSecurityHub」で指定して料金を確認してみましょう。後からスプレッドシートで整形しやすいようにCSV形式で出力します。
aws pricing get-products \
--region us-east-1 \
--service-code AWSSecurityHub \
--output json | jq -r '
["location","regionCode","usagetype","description","pricePerUnit","unit","beginRange","endRange"],
(.PriceList[] | fromjson |
.product.attributes as $attr |
.terms.OnDemand | to_entries[].value.priceDimensions | to_entries[].value as $price |
[
$attr.location,
$attr.regionCode,
$attr.usagetype,
$price.description,
$price.pricePerUnit.USD,
$price.unit,
$price.beginRange,
$price.endRange
]
) | @csv' > securityhub-pricing.csv
取得したCSVデータは全リージョン分でかなり長いので、結果は割愛します。
取得したデータのうち、Security Hubの料金で、東京リージョン関連のデータのみ抽出して整形したデータを下表にまとめました。
Security Hub essentials plan
| リソースタイプ | 料金 |
|---|---|
| EC2インスタンス | $0.0056944/時間 |
| Lambda関数 | $0.0004745/時間 |
| コンテナイメージ | $0.0003164/時間 |
| Lambda関数コード(Enhancedオプション) | $0.0006875/時間 |
IAM監視(グローバル) ※essentials planの一部
| リソースタイプ | 料金 |
|---|---|
| IAMロール | $0.00004167/時間 |
| IAMユーザー | $0.00004167/時間 |
イベント分析(GuardDuty) ※恐らくthreat analytics plan
| 使用量 | 料金 |
|---|---|
| すべてのイベント | $0.00000472/件 |
ログ分析 ※恐らくthreat analytics plan
| 使用量 | 料金 |
|---|---|
| 0〜1,000 GB | $0.649/GB |
| 1,000〜10,000 GB | $0.295/GB |
| 10,000 GB超 | $0.118/GB |
「Description」に「essentials plan」と明記されているものはessentials planの表にまとめました。IAMに関してはグローバルリソースだからか、「Location」欄に Any という値が入っていました。
こちらではかなり細かく時間単位の料金情報を取得出来ました。
最後に
ということで、今回は新しくなったSecurity Hubの料金について、3つの観点から調査を実施してみました。
自分も本記事を書くまでは「うわっ…Security Hubの料金、高すぎ…?」と思いましたが、CSPMの料金が含まれていることやその他使える機能を考慮するとなかなか悪くないのかもしれないですね。というより、もしかしたら今までよりお得に利用できる環境もあるのではないでしょうか?
本記事がどなたかのお役に立てれば幸いです。
以上、べこみんでした。








