Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

複数のアカウントとリージョンの AWS リソースを自動的にインベントリする - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

複数のアカウントとリージョンの AWS リソースを自動的にインベントリする

作成者: Matej Macek (AWS)

概要

このパターンは、複数のアカウントおよび の AWS リソースの包括的なインベントリを維持するための自動化されたアプローチの概要を示しています AWS リージョン。これは、インフラストラクチャエンジニアとセキュリティエンジニアがリソース管理プラクティスを改善するのに役立つように設計されています。を使用して AWS Config 、リソースの変更、クエリ用の Amazon Athena、インタラクティブダッシュボード用の Amazon QuickSight を追跡します。このソリューションを実装するには、 AWS CloudFormation スタックをデプロイします。

このソリューションは、Amazon Athena と Amazon QuickSight を使用した AWS Config データの視覚化」(AWS ブログ記事) で説明されているものと似ています。このパターンでは、このソリューションを拡張して、次の一般的な要件に対処し、次の主な利点を提供します。

  • コンプライアンスに重点を置く – このアプローチは、PCI DSSNIST SP 800-53ISO/IEC 27001HIPAAGDPR、および正確なアセットインベントリを義務付けるその他の規制要件を満たすのに役立ちます。

  • カスタマイズフレームワーク – さまざまな AWS リソースの QuickSight ダッシュボードを作成するための基盤を提供し、特定の要件に合わせてソリューションをカスタマイズできます。

  • ユーザー主導型の強化 – このアプローチでは、実際のユースケースからのフィードバックを取り入れ、より包括的なソリューションのリクエストに対処します。

インフラストラクチャ、セキュリティ、財務の各チームは、動的、マルチアカウント、またはマルチリージョン環境で可視性とコラボレーションの課題に直面することがよくあります。このソリューションは、これらの課題に対処し、リソースインベントリの作成と維持に必要な時間と労力を大幅に削減するように設計されています。その結果、リソース割り当ての決定、リスクの特定と軽減、コストの最適化、全体的な可視性とコラボレーションの向上に役立つリソースを一元的に把握できます。このアプローチは、セキュリティ、コンプライアンス、運用上の目的における概念的なソリューションと実際の実装ニーズとのギャップを埋めます。

前提条件と制限

前提条件

  • 次のアクティブな AWS アカウント:

    • 管理アカウント - 請求、アカウントの作成、組織全体のアクセスの制御のための一元化されたアカウント

    • 監査アカウント – セキュリティモニタリング、コンプライアンスチェック、ドリフト通知のための一元化されたハブ

    • ログアーカイブアカウント – 収集されたデータを保存および分析するための一元化されたアカウント

  • 監査アカウントで、ターゲットアカウントとリージョンから設定データを収集して集計する AWS Config アグリゲータ

  • ログアーカイブアカウントで、以下を設定します。

  • AWS Command Line Interface (AWS CLI)、インストールおよび設定済み

  • 次のリソースをプロビジョニングする CloudFormation スタックをデプロイするアクセス許可。

    • AWS Lambda 関数

    • Amazon S3 通知設定

    • Athena データベース、テーブル、ビュー

    • QuickSight データセットとデータソース

  • でオートメーションを実行するアクセス許可 AWS Systems Manager

  • QuickSight へのアクセス許可

制約事項

  • このソリューションは に依存します AWS Config。 AWS Config は通常、変更が検出された直後、または指定した頻度でリソースの設定変更を記録します。ただし、これはベストエフォートベースであり、場合によっては時間がかかることがあります。

  • このソリューションは、 がAWS Config サポートするリソースタイプのみを追跡します。

  • このソリューションは、他のクラウドプロバイダーやオンプレミス環境全体のリソースインベントリを追跡しません。

  • 一部の AWS のサービス はすべての で利用できるわけではありません AWS リージョン。利用可能なリージョンについては、 AWS ドキュメントの「サービスエンドポイントとクォータ」ページを参照し、サービスのリンクを選択します。

アーキテクチャ

次の図は、 AWS 組織内の複数のアカウントで設定およびコンプライアンスデータを収集、整理、分析、視覚化するための効率的なプロセスを示しています。

組織全体の設定およびコンプライアンスデータを収集および視覚化します。

この図表は、次のワークフローを示しています:

  1. 定期的なスケジュールで、 AWS Config アグリゲータはターゲットアカウントとリージョンのリソースに関する設定およびコンプライアンスデータを収集し、ログアーカイブアカウントの Amazon S3 バケットにデータを配信します。

  2. Amazon S3 バケットに新しい AWS Config データを追加すると、 AWS Lambda 関数が呼び出されます。

  3. Lambda 関数は、各スナップショットファイルのリージョンと日付に対応する値を持つキーを設定することで、データをパーティション化します。これにより、設定とコンプライアンスデータを AWS Glue 効率的にクエリおよび処理できます。

  4. Amazon Athena は AWS Glue スキーマを使用して、Amazon S3 バケットに保存されているデータに対して SQL クエリを実行します。からのスキーマメタデータを使用して AWS Glue 、データの構造を理解します。

  5. Athena のビューは、ターゲットデータセットを定義して抽出します。

  6. Amazon QuickSight のダッシュボードは、データセットの視覚化と分析に役立ちます。

ツール

AWS のサービス

  • Amazon Athena」はインタラクティブなクエリサービスで、Amazon S3 内のデータをスタンダード SQL を使用して直接分析できます。

  • AWS CloudFormation は、 AWS リソースの設定、迅速かつ一貫したプロビジョニング、および AWS アカウント と 全体のライフサイクル全体にわたる管理に役立ちます AWS リージョン。

  • AWS Config は、 内のリソースの詳細ビュー AWS アカウント と、その設定方法を提供します。リソースがどのように相互に関連しているか、またそれらの構成が時間の経過とともにどのように変化したかを特定するのに役立ちます。 AWS Config アグリゲータは、複数の およびリージョンから AWS Config 設定 AWS アカウント およびコンプライアンスデータを収集します。

  • AWS Glue は、フルマネージド型の抽出、変換、ロード (ETL) サービスです。これにより、データストアとデータストリーム間でのデータの分類、整理、強化、移動を確実に行うことができます。このパターンでは、 AWS Glue データカタログスキーマレジストリを使用します。

  • AWS Lambda は、サーバーのプロビジョニングや管理を行うことなくコードを実行できるコンピューティングサービスです。必要に応じてコードを実行し、自動的にスケーリングするため、課金は実際に使用したコンピューティング時間に対してのみ発生します。

  • AWS Organizations は、作成して一元管理する AWS アカウント 組織に複数の を統合するのに役立つアカウント管理サービスです。

  • Amazon QuickSight は、単一ダッシュボードでデータを視覚化、分析、レポートできるクラウドスケールのビジネスインテリジェンス (BI) サービスです。

  • Amazon Simple Storage Service (Amazon S3) は、データ量にかかわらず、保存、保護、取得する上で役立つクラウドベースのオブジェクトストレージサービスです。

  • AWS Systems Manager」は、 AWS クラウドで実行されるアプリケーションとインフラストラクチャの管理に役立ちます。アプリケーションとリソースの管理を簡素化し、運用上の問題を検出して解決する時間を短縮し、大規模な AWS リソースを安全に管理できるようにします。AWS Systems Manager 自動化は、多くの の一般的なメンテナンス、デプロイ、修復タスクを簡素化します AWS のサービス。

コードリポジトリ

このパターンの AWS CloudFormation テンプレートは、AWS Config 視覚化 GitHub リポジトリで使用できます。この CloudFormation テンプレートは、Amazon Athena で使用する AWS Config ように を設定する AWS Systems Manager オートメーションランブックをデプロイします。このオートメーションは AWS Glue 、指定された Amazon S3 バケットに接続する準備をし、Amazon Athena でビューを作成し、ダッシュボードの視覚化用に Amazon QuickSight を設定します。

ベストプラクティス

エピック

タスク説明必要なスキル

CloudFormation テンプレートをダウンロードします。

Config-QuickSight-Visualization-SSM-Automation.yaml CloudFormation テンプレートをダウンロードします。

AWS 管理者、クラウド管理者、DevOps エンジニア

CloudFormation テンプレートを変更します。

この手順は、 を使用してAWS Control Towerいて、 AWS Config によって管理されている場合にのみ実行してください AWS Control Tower。CloudFormation テンプレートを変更する必要があります。

  1. 管理アカウントにサインインします。

  2. AWS Organizations コンソールを開きます。

  3. 設定ページに移動します。このページには、組織 ID など、組織に関する詳細が表示されます。

  4. 組織 ID をコピーします。

  5. 任意のテキストエディタで、Config-QuickSight-Visualization-SSM-Automation.yaml ファイルを開きます。

  6. 次の行を見つけます。

    return re.match('^AWSLogs/(\d+)/Config/([\w-]+)/(\d+)/(\d+)/(\d+)/ConfigSnapshot/[^\]+$', object_key)
  7. この行を以下に置き換えます。ここで、 <ORGANIZATION_ID>は以前にコピーした ID です。

    return re.match('^<ORGANIZATION_ID>/AWSLogs/(\d+)/Config/([\w-]+)/(\d+)/(\d+)/(\d+)/ConfigSnapshot/[^\]+$', object_key)
  8. Config-QuickSight-Visualization-SSM-Automation.yaml ファイルを保存して閉じます。

DevOps エンジニア、AWS 管理者

CloudFormation スタックを作成します。

CloudFormation コンソールからスタックを作成する」の手順に従います。次の点に注意してください:

  1. テンプレートファイルをアップロードを選択し、ダウンロードした YAML ファイルを選択します。

  2. [スタック名] に「Config-QuickSight-Visualization-SSM-Automation」と入力します。

  3. [送信] を選択します。

AWS 管理者、クラウド管理者、DevOps エンジニア

CloudFormation スタックをデプロイする

タスク説明必要なスキル

CloudFormation テンプレートをダウンロードします。

Config-QuickSight-Visualization-SSM-Automation.yaml CloudFormation テンプレートをダウンロードします。

AWS 管理者、クラウド管理者、DevOps エンジニア

CloudFormation テンプレートを変更します。

この手順は、 を使用してAWS Control Towerいて、 AWS Config によって管理されている場合にのみ実行してください AWS Control Tower。CloudFormation テンプレートを変更する必要があります。

  1. 管理アカウントにサインインします。

  2. AWS Organizations コンソールを開きます。

  3. 設定ページに移動します。このページには、組織 ID など、組織に関する詳細が表示されます。

  4. 組織 ID をコピーします。

  5. 任意のテキストエディタで、Config-QuickSight-Visualization-SSM-Automation.yaml ファイルを開きます。

  6. 次の行を見つけます。

    return re.match('^AWSLogs/(\d+)/Config/([\w-]+)/(\d+)/(\d+)/(\d+)/ConfigSnapshot/[^\]+$', object_key)
  7. この行を以下に置き換えます。ここで、 <ORGANIZATION_ID>は以前にコピーした ID です。

    return re.match('^<ORGANIZATION_ID>/AWSLogs/(\d+)/Config/([\w-]+)/(\d+)/(\d+)/(\d+)/ConfigSnapshot/[^\]+$', object_key)
  8. Config-QuickSight-Visualization-SSM-Automation.yaml ファイルを保存して閉じます。

DevOps エンジニア、AWS 管理者

CloudFormation スタックを作成します。

CloudFormation コンソールからスタックを作成する」の手順に従います。次の点に注意してください:

  1. テンプレートファイルをアップロードを選択し、ダウンロードした YAML ファイルを選択します。

  2. [スタック名] に「Config-QuickSight-Visualization-SSM-Automation」と入力します。

  3. [送信] を選択します。

AWS 管理者、クラウド管理者、DevOps エンジニア
タスク説明必要なスキル

QuickSight ユーザー名を見つけます。

  1. QuickSight コンソールを開きます。

  2. プロファイルメニューを開きます。

  3. ユーザー名を書き留めます。この値は後で必要になります。

AWS 管理者、クラウド管理者、DevOps エンジニア

配信チャネル名と Amazon S3 バケット名を検索します。

  1. で AWS CLI、次のコマンドを入力します。

    aws configservice describe-delivery-channels
  2. Amazon S3 バケット名とAWS Config 配信チャネルの名前を書き留めます。これらの値は後で必要になります。

AWS 管理者、クラウド管理者、DevOps エンジニア

Systems Manager でオートメーションを実行します。

  1. AWS Systems Manager コンソールを開きます。

  2. ナビゲーションペインで、[ドキュメント] を選択します。

  3. [自己所有] を選択します。

  4. Config-QuickSight-Visualization を選択します。

  5. [Execute automation (自動化の実行)] を選択してください。

  6. 入力パラメータ セクションで、次のパラメータの値を入力します。

    • ConfigDeliveryChannelName – AWS Config 配信チャネルの名前を入力します。このパラメータは必須です。

    • ConfigS3BucketLocation – AWS Config 設定データを保存する Amazon S3 バケットの名前を入力します。このパラメータは必須です。

    • QuickSightUserName – QuickSight への管理アクセス権を持つユーザー名を入力します。このパラメータは必須です。

    • AutomationAssumeRole – Systems Manager Automation がユーザーに代わってアクションを実行できるようにする AWS Identity and Access Management (IAM) ロールの Amazon リソースネーム (ARN)。このパラメータはオプションです。このパラメータは空白のままにします。

    • DeleteConfigVisualization – を選択しますfalse

  7. [実行] を選択してください。

AWS 管理者、クラウド管理者、DevOps エンジニア

Systems Manager でオートメーションを実行する

タスク説明必要なスキル

QuickSight ユーザー名を見つけます。

  1. QuickSight コンソールを開きます。

  2. プロファイルメニューを開きます。

  3. ユーザー名を書き留めます。この値は後で必要になります。

AWS 管理者、クラウド管理者、DevOps エンジニア

配信チャネル名と Amazon S3 バケット名を検索します。

  1. で AWS CLI、次のコマンドを入力します。

    aws configservice describe-delivery-channels
  2. Amazon S3 バケット名とAWS Config 配信チャネルの名前を書き留めます。これらの値は後で必要になります。

AWS 管理者、クラウド管理者、DevOps エンジニア

Systems Manager でオートメーションを実行します。

  1. AWS Systems Manager コンソールを開きます。

  2. ナビゲーションペインで、[ドキュメント] を選択します。

  3. [自己所有] を選択します。

  4. Config-QuickSight-Visualization を選択します。

  5. [Execute automation (自動化の実行)] を選択してください。

  6. 入力パラメータ セクションで、次のパラメータの値を入力します。

    • ConfigDeliveryChannelName – AWS Config 配信チャネルの名前を入力します。このパラメータは必須です。

    • ConfigS3BucketLocation – AWS Config 設定データを保存する Amazon S3 バケットの名前を入力します。このパラメータは必須です。

    • QuickSightUserName – QuickSight への管理アクセス権を持つユーザー名を入力します。このパラメータは必須です。

    • AutomationAssumeRole – Systems Manager Automation がユーザーに代わってアクションを実行できるようにする AWS Identity and Access Management (IAM) ロールの Amazon リソースネーム (ARN)。このパラメータはオプションです。このパラメータは空白のままにします。

    • DeleteConfigVisualization – を選択しますfalse

  7. [実行] を選択してください。

AWS 管理者、クラウド管理者、DevOps エンジニア
タスク説明必要なスキル

データを更新します。

特定の要件に従ってデータセットの更新をスケジュールするには、「SPICE データの更新」の手順に従います。

AWS 管理者、DevOps エンジニア、クラウド管理者

分析を作成します。

リソースの視覚化に役立つダッシュボードを QuickSight で作成するには、Amazon QuickSight で分析を開始する」の手順に従います。

QuickSight 管理者

ダッシュボードを作成します。

  1. QuickSight 分析の変更が完了したら、「ダッシュボードの公開」の手順に従ってダッシュボードを作成します。ダッシュボードは、他の QuickSight ユーザーと共有できる分析です。

  2. 「ダッシュボードへのアクセス権を付与する」の手順に従って、ダッシュボードをターゲット QuickSight ユーザーと共有します。

QuickSight 管理者

Amazon QuickSight でデータを視覚化する

タスク説明必要なスキル

データを更新します。

特定の要件に従ってデータセットの更新をスケジュールするには、「SPICE データの更新」の手順に従います。

AWS 管理者、DevOps エンジニア、クラウド管理者

分析を作成します。

リソースの視覚化に役立つダッシュボードを QuickSight で作成するには、Amazon QuickSight で分析を開始する」の手順に従います。

QuickSight 管理者

ダッシュボードを作成します。

  1. QuickSight 分析の変更が完了したら、「ダッシュボードの公開」の手順に従ってダッシュボードを作成します。ダッシュボードは、他の QuickSight ユーザーと共有できる分析です。

  2. 「ダッシュボードへのアクセス権を付与する」の手順に従って、ダッシュボードをターゲット QuickSight ユーザーと共有します。

QuickSight 管理者
タスク説明必要なスキル

Systems Manager オートメーションによって作成されたリソースを削除します。

  1. AWS Systems Manager コンソールを開きます。

  2. ナビゲーションペインで、[ドキュメント] を選択します。

  3. [自己所有] を選択します。

  4. Config-QuickSight-Visualization を選択します。

  5. [Execute automation (自動化の実行)] を選択してください。

  6. 入力パラメータ セクションで、 DeleteConfigVisualizationパラメータに と入力しますtrue

  7. [実行] を選択してください。

AWS 管理者、クラウド管理者、DevOps エンジニア

CloudFormation スタックを削除します。

Config-QuickSight-Visualization-SSM-Automation スタック内のリソースを削除するには、CloudFormation コンソールからスタックを削除する」の手順に従います。

AWS 管理者、クラウド管理者、DevOps エンジニア

(オプション) クリーンアップする

タスク説明必要なスキル

Systems Manager オートメーションによって作成されたリソースを削除します。

  1. AWS Systems Manager コンソールを開きます。

  2. ナビゲーションペインで、[ドキュメント] を選択します。

  3. [自己所有] を選択します。

  4. Config-QuickSight-Visualization を選択します。

  5. [Execute automation (自動化の実行)] を選択してください。

  6. 入力パラメータ セクションで、 DeleteConfigVisualizationパラメータに と入力しますtrue

  7. [実行] を選択してください。

AWS 管理者、クラウド管理者、DevOps エンジニア

CloudFormation スタックを削除します。

Config-QuickSight-Visualization-SSM-Automation スタック内のリソースを削除するには、CloudFormation コンソールからスタックを削除する」の手順に従います。

AWS 管理者、クラウド管理者、DevOps エンジニア

トラブルシューティング

問題ソリューション

Amazon QuickSight は に接続しようとしていますがus-east-1 AWS リージョン、そのリージョンでのリソースの作成は許可されていません。

サービスコントロールポリシーにより、このリージョンの Amazon QuickSight へのサブスクリプションが制限されています。サービスコントロールポリシーで、ターゲットを手動で指定します AWS リージョン。を適切なリージョン識別子<REGION_ID>に置き換えます。

https://<REGION_ID>.quicksight.aws.amazon.com/sn/start/dashboards

以下に例を示します。

https://eu-central-1.quicksight.aws.amazon.com/sn/start/dashboards

Amazon Athena では、次のメッセージが表示されます。

Before you run your first query, you need to set up a query result location in Amazon S3.

Amazon Athena からのクエリ結果を保存する Amazon S3 バケットが準備されていることを確認します。 Amazon Athena 次に、Amazon Athena コンソールを使用してクエリ結果の場所を指定する」の手順に従います。

関連リソース

AWS ドキュメント

AWS ブログ投稿

その他のリソース

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.