Upgrade to Pro — share decks privately, control downloads, hide ads and more …

20241218_マルチアカウント環境におけるIAM_Access_Analyzerによる権限...

NRI Netcom
December 23, 2024

 20241218_マルチアカウント環境におけるIAM_Access_Analyzerによる権限管理.pdf

NRI Netcom

December 23, 2024
Tweet

More Decks by NRI Netcom

Other Decks in Technology

Transcript

  1. 1 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy 自己紹介

    01 AWS IAM Access Analyzerについて 02 マルチアカウント管理について 03 まとめ 04
  2. 3 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy ◼

    名前:藤本匠海 ◼ 出身:愛知県 ◼ 経歴 ⚫ 2023年4月~ • NRIネットコム入社 ⚫ 2023年7月~現在 • クラウド事業推進部に配属 • AWSを活用したシステムの構築・支援・運用 ◼ 好きなAWSサービス ◼ 保有AWS資格 自己紹介 AWS CloudFormation AWS Organizations Amazon Bedrock
  3. 5 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy AWS

    IAM Access Analyzerの概要 ◼ サービス概要 ⚫ IAMロールやリソースに対するアクセス許可を分析するサービス • 権限を最小限に抑えるためのガイドを提供 ⚫ 主に4つの機能 ①外部アクセスの検出 ②未使用のアクセスの検出 ③ポリシーの検証 ④ポリシーの生成 AWS IAM Access Analyzerについて IAM Access Analyzer
  4. 6 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy ①外部アクセスの検出

    ◼ 機能概要 ⚫ AWSアカウントまたは組織の外部からアクセスが可能なAmazon S3 バケットや IAM ロールなどのリソースを特定 • セキュリティ上のリスクとなるリソースやデータへの意図しないアクセスを確認 ⚫ 外部アクセス検出用のアナライザーを作成(リージョン単位) ⚫ 料金 • 無料で利用できる ⚫ 検出結果を生成する流れ • 実際にアクセスログを確認するのではなく、リソースへのアクセス許可の有無(リソースベースポリシー)から判断 ◼ イメージ図 AWS IAM Access Analyzerについて
  5. 7 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy ①外部アクセスの検出

    ◼ 検出対象(リソースタイプ) ⚫ 外部アクセスでサポートされるリソースタイプ • Amazon Simple Storage Service バケット • Amazon Simple Storage Service ディレクトリバケット • AWS Identity and Access Management ロール • AWS Key Management Service キー • AWS Lambda の関数とレイヤー • Amazon Simple Queue Service キュー • AWS Secrets Manager シークレット • Amazon Simple Notification Service トピック • Amazon Elastic Block Store ボリュームスナップショット • Amazon Relational Database Service DB スナップショット • Amazon Relational Database Service DB クラスタースナップショット • Amazon Elastic Container Registry リポジトリ • Amazon Elastic File System ファイルシステム • Amazon DynamoDB Streams • Amazon DynamoDB テーブル (2024年12月時点:https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/access-analyzer-resources.html) ⚫ 注意点 • 全てのリソースがサポートされている訳ではない • アナライザーはリージョン単位 • 検出結果を取得したいリージョンごとにアナライザーを作成する必要がある • グローバルリソース(IAMロールなど)の場合は、アナライザーが存在する全てのリージョンで検出 AWS IAM Access Analyzerについて
  6. 8 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy ①外部アクセスの検出

    ◼ 検出範囲(アナライザーの信頼ゾーン) ⚫ 「組織全体」または「AWSアカウント」を選択 • 組織全体:AWS Organizationsの組織に属するすべてのメンバーアカウントの外部アクセスを検出 • AWSアカウント:アナライザーをデプロイしたAWSアカウント以外の外部アクセスを検出 AWS IAM Access Analyzerについて
  7. 9 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy ②未使用のアクセスの検出

    ◼ 機能概要 ⚫ アナライザーの作成時に指定された日数(1~180日)に基づいて、選択したAWSアカウントまたは組織内の IAM エンティティについ て、未使用のアクセスを検出する ⚫ 検出された未使用のアクセスに関して、推奨事項を提供 ⚫ 未使用のアクセス検出用のアナライザーを作成 • 外部アクセスのアナライザーとは別のもの ⚫ 料金 • 1ヶ月間で分析された IAM ロールとユーザーの数あたり$0.20の料金が発生 ⚫ 検出対象(リソースタイプ) • 未使用のロール • 未使用の IAM ユーザーアクセスキーとパスワード • 未使用のアクセス許可 ⚫ 検出範囲(アナライザーの信頼ゾーン) • 外部アクセス検出と同様に、「組織全体」または「AWSアカウント」を選択 AWS IAM Access Analyzerについて
  8. 10 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy 検出結果のダッシュボード

    ◼ アナライザー(外部アクセス,未使用のアクセス)の検出結果は、ダッシュボードによって視覚的に確認できる AWS IAM Access Analyzerについて https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/access-analyzer-dashboard.html
  9. 11 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy ③ポリシーの検証

    ◼ 機能概要 ⚫ AWSベストプラクティスまたは指定したセキュリティ標準に基づいてカスタマー管理ポリシーの検証を行う ⚫ 100 を超えるポリシーチェックと実用的な推奨事項を提供し、安全で機能的なポリシーを作成 ⚫ IAMベストプラクティス:IAM Access Analyzerを使用してIAMポリシーを検証し、安全で機能的なアクセス許可を確保する ⚫ 料金 • 1カ月間で呼び出したAPI リクエストの数あたり$0.002の料金が発生 AWS IAM Access Analyzerについて IAMコンソールのポリシー編集画面
  10. 12 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy ④ポリシーの生成

    ◼ 機能概要 ⚫ AWS CloudTrailでキャプチャされたアクセスアクティビティに基づいて、IAMユーザーやIAMロールに対して、きめ細かなポリシーを 生成する ⚫ エンティティのアクセス許可を最小の権限に絞り込むことができる • IAMベストプラクティス「最小特権アクセス許可を適用する」を実現 ⚫ 料金 • 無料で利用できる (AWS CloudTrailログのリクエストとデータ転送に対するAmazon S3の標準料金は発生) AWS IAM Access Analyzerについて
  11. 13 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy 4つの機能まとめ

    ◼ 機能と料金 AWS IAM Access Analyzerについて 機能 概要 料金 アナライザーの有無 ①外部アクセスの検出 AWSアカウントまたは組織の外部か らのアクセスを検出する 無料 〇 ②未使用のアクセスの検出 AWSアカウントまたは組織の内部の IAMエンティティについて、未使用のア クセスを検出する 1カ月間で分析された IAM ロー ルとユーザーの数あたり$0.20 〇 ③ポリシーの検証 AWSベストプラクティスまたは指定した セキュリティ標準に基づいて、カスタ マー管理ポリシーの検証を行う 1カ月間で呼び出したAPI リクエ ストの数あたり$0.0020 ④ポリシーの生成 AWS CloudTrailでキャプチャされたア クセスアクティビティに基づいて、最小 権限のポリシーを生成する 無料 (Cloud Trailログ保存のための S3料金は発生)
  12. 15 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy ◼

    なぜマルチアカウント環境(アカウントを分割)が必要であるか ⚫ アカウントを分割することで、4つの観点で管理が簡単に • 環境:開発、テスト、本番などの環境に分離 • 請求:システム単位、組織単位などでコストを分離 • 権限:リソースの操作権限を特定の業務ユニットに合わせて権限の委譲 • ワークロード:社内・社外向けや顧客などスコープに応じて、ワークロードを分離 ◼ AWS Organizations ⚫ 複数のアカウントを一元管理できるサービス ⚫ 構成要素 • OU(Organizational Unit):組織内のアカウントをOUという単位でグループ化 • SCP(Service Control Policy):OU単位でアクセス許可を設定 • マネジメントアカウント:Organizationsを管理するアカウント • メンバーアカウント:ルートまたはOU配下のアカウント ⚫ AWS Organizationsと統合しているサービス • AWS CloudFormation Stack Sets • AWS Control Tower • Amazon GuardDuty • AWS Security Hub • AWS Config • IAM Access Analyzer など マルチアカウントの管理について AWS Organizations https://docs.aws.amazon.com/ja_jp/organizations/latest/userguide/orgs_integrate_services_list.html
  13. 16 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy AWS

    Organizationsの構成例 ◼ OU単位で制御 Audit Account:組織全体のセキュリティ監査を行うことを想定して作られるアカウント マルチアカウント管理について AWS Cloud Management Account (Root) ログ用 Account Core OU Custom OU AWS Organizations Audit Account Prod Account Stg Account Dev Account
  14. 17 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy 4.

    AWS IAM Access Analyzerによる外部アクセス検出構成案
  15. 18 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy マルチアカウント環境における外部アクセス検出構成案

    ◼ IAM Access Analyzerの外部アクセスを用いて、マルチアカウント環境の権限管理を行う ⚫ 想定条件 ①AWS Organizations組織内のアカウント同士のアクセスも検出 • アナライザーの信頼ゾーンをAWSアカウントで設定する • メンバーアカウントごとに外部アクセスのアナライザーを展開する ②検出結果は1つのアカウントに集約する • Auditアカウントに集約して、一元管理する ③東京(ap-northeast-1)リージョンのリソースを検知する ④検出結果を定期的に確認するために、Slackに通知する ⚫ アーキテクチャ図 AWS IAM Access Analyzerによる外部アクセス検出構成案
  16. 19 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy Auditアカウント

    ◼ AWS Security Hub ⚫ セキュリティ系サービスの検出結果を集約し、一 元的に検出結果を管理できるサービス ⚫ マルチリージョンで検出したい場合 メンバーアカウント側: 各リージョンにSecurity Hubをデプロイ Auditアカウント側: Security Hubの検出結果のリージョン集約を設定 ◼ 通知フロー ⚫ AWS Security Hubの通知内容を直接Slackに 通知することはできないため、 EventBridge→SNS→Chatbot経由でSlackに 通知 AWS IAM Access Analyzerによる外部アクセス検出構成案 検出結果を 集約 イベントを 送信
  17. 20 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy メンバーアカウント

    ◼ IAM Access Analyzer ⚫ メンバーアカウント同士のアクセスも検出するため に、各メンバーアカウントにアナライザーをデプロイ ⚫ アナライザーのデプロイにはCloudFormation StackSetsを用いることで、複数のメンバーアカウ ントにリソースをデプロイ可能 ◼ アナライザー自体は修正を行わない ⚫ 定期的に監視・確認するだけでなく、検出結果 から改善も実施 →IAM Access Analyzerのポリシー生成を活用 ◼ より適切に権限管理を行うための工夫 ⚫ アーカイブルール • 意図した外部アクセスをアーカイブ(検出結果 から除外)する →検出結果をフィルタリングし、可読性を向上 • アナライザーごとに設定(CloudFormation StackSetsテンプレートで作成可能) AWS IAM Access Analyzerによる外部アクセス検出構成案 外部アクセス を検出
  18. 22 Copyright(C) NRI Netcom, Ltd. All rights reserved. #nncstudy ◼

    AWS IAM Access AnalyzerはIAMロールやリソースに対するアクセス許可を分析するサービス ◼ 大きく4つの機能 ①外部アクセスの検出 ②未使用のアクセスの検出 ③ポリシーの検証 ④ポリシーの生成 ◼ アナライザー注意点 ⚫ アナライザーはリージョン単位でデプロイする必要がある ⚫ アナライザーは、組織全体のアナライザーとAWSアカウントのアナライザーが存在する ⚫ アナライザー自体は検出結果から修正を行わない ◼ マルチアカウント環境ではAWS Security Hubと合わせて利用すると検出結果を集約できる ◼ アーカイブルールを利用することで、意図した検出結果に対してはフィルタリングを行う ⚫ 定期的に検出結果を確認し、適宜アーカイブすることが大切 まとめ