管理アカウントのIAM Access Analyzer検出結果がAuditアカウントのSecurity Hub CSPMに表示されない理由を確認してみた
こんにちは!クラウド事業本部の吉田です。
以前の記事で、Control Tower環境を前提としたマルチアカウント環境のセキュリティサービス構成を整理しました。
今回は、前回の記事では触れなかった「IAM Access Analyzerの検出結果がSecurity Hub CSPMにどう連携されるのか」を確認してみました。
組織レベルアナライザーはAuditアカウントに作成しているため、管理アカウントの管理リージョン上のリソースに対する検出結果も、AuditアカウントのSecurity Hub CSPMに集約されるものと思っていました。
以前の記事の内容を簡単に振り返ったうえで、確認した内容を説明します。
前回の記事の振り返り
管理アカウントとSecurity Hub CSPMの関係
前回の記事では、管理アカウントのSecurity Hub CSPMを組織統合から除外し、スタンドアロンで管理する方針としました。
Control Tower環境では、リージョン拒否コントロール(SCP)によりメンバーアカウントは管理リージョンでのみAWSサービスを利用します。
ただし管理アカウントにはSCPが適用されないため、全リージョンでセキュリティサービスを有効化し、検出結果を東京リージョンに集約する構成にしております。
Security Hub CSPMの中央設定で組織展開する場合、クロスリージョン集約の設定は委任管理者(Audit)の設定が全メンバーに適用されます。Auditアカウントの集約元はControl Towerの管理リージョンのみのため、管理アカウントをメンバーに含めると「全リージョンを集約」という要件を満たせなくなります。そのため、管理アカウントを組織統合から除外しました。
IAM Access Analyzerの構成
Auditアカウントには組織レベルの外部アクセスアナライザー(信頼ゾーン: 組織)を作成しています。このアナライザーはControl Towerの管理リージョンに作成し、そのリージョンでは管理アカウントを含む組織内全アカウントのリソースを分析対象とします。
リージョン拒否コントロールの対象外リージョンは組織レベルのアナライザーのカバー外となるため、管理アカウント上には信頼ゾーンが「アカウント」のアナライザーを別途作成しています。
事象の確認
実際の環境のキャプチャを用いて、説明します。
わかりづらくて恐縮なのですが、アカウントに関しては下記の通りとなります。
- Auditアカウント
- 5から始まるアカウントID
- 管理アカウント
- 0から始まるアカウントID
Auditアカウント
Auditアカウントの組織レベルのアナライザーで、リソース所有者アカウントを管理アカウントでフィルタすると、検出結果が表示されます。
IAM Access Analyzerのコンソール上では、管理アカウントの検出結果を確認できている状態です。

AuditアカウントのSecurity Hub CSPMでIAM Access Analyzerの検出結果を確認すると、メンバーアカウントの検出結果は表示されます。

しかし、管理アカウントのアカウントIDでフィルタすると、検出結果が0件になります。

管理アカウントの検出結果が、IAM Access Analyzerのコンソールでは見えるのに、Security Hub CSPMには表示されません。
管理アカウント
管理アカウント自身のSecurity Hub CSPMを確認すると、IAM Access Analyzerの検出結果が表示されていました。

Auditアカウントの組織アナライザーがカバーしている管理リージョン(この環境では、東京リージョン)の検出結果が、管理アカウントのSecurity Hub CSPMに取り込まれていることがわかります。
つまり、管理アカウントのIAM Access Analyzer検出結果は、AuditアカウントのSecurity Hub CSPMには連携されず、管理アカウント自身のSecurity Hub CSPMで確認する形となります。
仕組みの解説
なぜこのような動作になるのか、Security Hub CSPMの仕組みから説明します。
BatchImportFindings APIの制約
Security Hub CSPMに検出結果を取り込むBatchImportFindings APIには、呼び出し元アカウントに関する制約があります。※1
BatchImportFindings を、次のいずれかで呼び出す必要があります。
- 検出結果に関連付けられているアカウント。関連付けられたアカウントの識別子は、検出結果の AwsAccountId 属性の値に一致している必要があります。
- 公式の Security Hub CSPM パートナー統合として許可リストに載っているアカウント。
IAM Access Analyzerの組織レベルアナライザーが管理アカウントのリソースに対する検出結果を生成した場合、その検出結果のAwsAccountIdは管理アカウントのIDになります。BatchImportFindings APIの制約により検出結果はAwsAccountIdに紐づくアカウント、つまり管理アカウントのSecurity Hub CSPMに取り込まれます。
Security Hub CSPMの組織統合の仕様
Security Hub CSPMは、メンバーアカウントの検出結果を委任管理者アカウントにコピーしません。※2
Security Hub CSPM では、メンバーアカウントの検出結果を管理者アカウントにコピーすることはありません。Security Hub CSPM では、すべての検出結果が、特定のアカウントの特定のリージョンに取り込まれます。管理者アカウントは、各リージョンのメンバーアカウントの結果を表示および管理できます。
委任管理者(Audit)がメンバーアカウントの検出結果を閲覧できるのは、そのアカウントがSecurity Hub CSPMの組織統合でメンバーとして登録されている場合に限られます。管理アカウントはSecurity Hub CSPMの組織統合から除外しているため、AuditアカウントのSecurity Hub CSPMから管理アカウントの検出結果を閲覧できません。
検出結果の流れ
ここまでの内容を図にまとめます。
検出結果はBatchImportFindings APIにより、AwsAccountIdに紐づくアカウントのSecurity Hub CSPMに取り込まれます。メンバーアカウントの検出結果もAuditアカウントにコピーされるわけではなく、メンバーアカウント自身のSecurity Hub CSPMに取り込まれたものをAuditアカウントが組織統合の権限で閲覧しています。
管理アカウントは組織統合から除外しているため、Auditアカウントから閲覧できません。IAM Access Analyzerのコンソールでは組織レベルアナライザーの検出結果として管理アカウント分も表示されますが、Security Hub CSPMへの連携は別のパスであるという点がポイントです。
セルフマネージドでも解決できない理由
「管理アカウントをSecurity Hub CSPMの組織統合にセルフマネージドとして登録すれば、Auditから管理アカウントの検出結果を閲覧できるのでは?」と思うかもしれません。
しかし、セルフマネージドアカウントであってもクロスリージョン集約の設定は委任管理者アカウント(Audit)の中央設定が優先されます。※3
冒頭で説明した通り、AuditアカウントのSecurity Hub CSPMはリージョン集約元をControl Tower管理リージョンとしています。管理アカウントをメンバーとして登録すると、集約元リージョンがAuditの設定(Control Tower管理リージョンのみ)に上書きされます。リージョン拒否コントロール対象外リージョンの検出結果が東京リージョンに集約されなくなるため、別の問題が発生します。
この動作の詳細は、下記のブログが詳しく解説されています。
運用方針
アカウント種別ごとの、IAM Access Analyzer検出結果の確認方法は下記の通りとなります。
- メンバーアカウント(管理アカウント以外)の検出結果は、AuditアカウントのSecurity Hub CSPMで確認
- 管理アカウントの検出結果は、管理アカウントのSecurity Hub CSPMで確認
管理アカウントのSecurity Hub CSPMには、IAM Access AnalyzerだけでなくGuardDutyの検出結果も同様にリージョン集約されています。
管理アカウントのセキュリティ検出結果は管理アカウント上で一元的に確認する運用となります。
なお、管理アカウントの検出結果の通知は、Auditアカウントに集約する形がいいと思います。
通知基盤の詳細は、以下の記事を参照してください。
さいごに
IAM Access Analyzerの組織レベルアナライザーが検出した管理アカウントの検出結果が、AuditアカウントのSecurity Hub CSPMに表示されない理由を確認しました。
IAM Access Analyzerのコンソールで確認できる範囲と、Security Hub CSPMの連携先は異なるという点がポイントです。BatchImportFindings APIの制約とSecurity Hub CSPMの組織統合の仕様を把握しておくと、検出結果がどこに取り込まれるかを正しく理解できます。
管理アカウントはSCPが適用されない特殊なアカウントであり、セキュリティ監視も組織統合とは別に管理する設計が現実的だと感じました。
以上、クラウド事業本部の吉田でした!








