の AWS Config SQL クエリエディタを使用したクエリ (AWS CLI) - AWS Config

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

の AWS Config SQL クエリエディタを使用したクエリ (AWS CLI)

AWS CLI は、 AWS のサービスを管理するための統合ツールです。ダウンロードと設定のツールを 1 つだけ使用すると、コマンドラインから複数の AWS サービスを制御したり、スクリプトを使用して自動化したりできます。の詳細 AWS CLI と AWS CLI ツールのインストール手順については、「 AWS Command Line Interface ユーザーガイド」の以下を参照してください。

必要に応じて、 と入力aws configureして、高度なクエリが利用可能な AWS リージョンを使用する AWS CLI ように を設定します。

考慮事項

前提条件

次のいずれかの管理 AWS ポリシーを使用している場合は、クエリを実行して保存するために必要なアクセス許可が AWSServiceRoleForConfig (サービスにリンクされたロール) または AWS_ConfigRole に付与されます。

それ以外の場合は、AWSConfigUserAccess AWS 管理ポリシーに含まれるアクセス許可が必要です。

クエリできるプロパティのリスト

更新されたプロパティのリストとそのデータ型は、[GitHub] より入手できます。

高度なクエリとアグリゲータ

アグリゲーターでクエリを実行するには、アグリゲーターを作成します。詳細については、「のアグリゲータの作成 AWS Config」を参照してください。

アグリゲーターがすでに設定されている場合は、クエリのスコープでアグリゲーターを選択し、そのアグリゲーターで高度なクエリを実行します。アグリゲータを選択するときは、クエリステートメントに AWS アカウント ID と AWS リージョンを追加して、その情報を結果に表示することを検討してください。

リソース設定データのクエリ

クエリエディタ (AWS CLI) を使用して、単一のアカウントとリージョンのリソース設定データをクエリするには
  1. コマンドプロンプトまたはターミナルウィンドウを開きます。

  2. リソース設定データをクエリするには、次のコマンドを入力します。

    aws configservice select-resource-config --expression "SELECT resourceId WHERE resourceType='AWS::EC2::Instance'"

    クエリに応じて、出力は次のようになります。

    { "QueryInfo": { "SelectFields": [ { "Name": "resourceId" } ] }, "Results": [ "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}" ] }
クエリエディタ (AWS CLI) を使用して、複数のアカウントとリージョンのリソース設定データをクエリするには
  1. コマンドプロンプトまたはターミナルウィンドウを開きます。

  2. リソース設定データをクエリするには、次のコマンドを入力します。

    aws configservice select-aggregate-resource-config --expression "SELECT resourceId WHERE resourceType='AWS::EC2::Instance'" --configuration-aggregator-name my-aggregator

    クエリに応じて、出力は次のようになります。

    { "QueryInfo": { "SelectFields": [ { "Name": "resourceId" } ] }, "Results": [ "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}" ] }
    注記

    高度なクエリで AWS::IAM::UserAWS::IAM::GroupAWS::IAM::Role、および AWS::IAM::Policy リソースタイプを使用する場合は、awsRegion = 'global' を使用します。

クエリの保存

  1. コマンドプロンプトまたはターミナルウィンドウを開きます。

  2. 次のコマンドを入力してクエリを保存します。

    aws configservice put-stored-query --stored-query "{\"QueryName\": \"cli-test\", \"Expression\": \"SELECT *\", \"Description\": \"cli test query\" }" --tags "[{ \"Key\": \"first-tag\", \"Value\": \"\" }, { \"Key\": \"second-tag\", \"Value\": \"non-empty-tag-value\" }]"
  3. クエリに応じて、出力は次のようになります。

    { "QueryArn": "arn:aws:config:eu-central-1:Account ID:stored-query/cli-test/query-e65mijt4rmam5pab" }
    注記

    --tags は省略可能です。タグを渡すと、保存されたタグは list-stored-queries および get-stored-query のどちらからも返されません。list-tag-for-resources を使用して、保存されたクエリに関連するタグを取得する必要があります。

    --description は、クエリの作成時または更新時に使用するオプションです。

保存されたクエリをすべて表示

  1. 保存されているすべてのクエリのリストを表示するには、次のコマンドを入力します。

    aws configservice list-stored-queries
  2. クエリに応じて、出力は次のようになります。

    { "StoredQueryMetadata": [ { "QueryId": "query-e65mijt4rmam5pab", "QueryArn": "arn:aws:config:eu-central-1:Account ID:stored-query/cli-test/query-e65mijt4rmam5pab", "QueryName": "cli-test" }, { "QueryId": "query-rltwlewlqfivadxq", "QueryArn": "arn:aws:config:eu-central-1:Account ID:stored-query/cli-test-2/query-rltwlewlqfivadxq", "QueryName": "cli-test-2", "Description": "cli test query" } ] } }

保存されたクエリの詳細の取得

  1. 保存されたクエリの詳細を取得するには、次のコマンドを入力します。

    aws configservice get-stored-query --query-name cli-test
  2. クエリに応じて、出力は次のようになります。

    { "StoredQuery": { "QueryId": "query-e65mijt4rmam5pab", "QueryArn": "arn:aws:config:eu-central-1:Account ID:stored-query/cli-test/query-e65mijt4rmam5pab", "QueryName": "cli-test", "Description": "cli test query", "Expression": "SELECT *" } }

保存されたクエリの削除

  • 保存されたクエリを削除するには、次のコマンドを入力します。

    aws configservice delete-stored-query --query-name cli-test

成功すると、コマンドは追加の出力なしで実行されます。