Google Cloud SDK の使用

は、

このページでは、Cloud SDKgcloud alpha asset コマンドを使用してアセット メタデータをエクスポートする方法とアセット履歴を取得する方法について説明します。

Cloud SDK は、Cloud Asset Inventory や他の Google Cloud Platform サービスとやり取りするための gcloud コマンドライン ツールを提供します。

始める前に

  • gcloud ツールは、Cloud Asset API を使用して Google Cloud Platform にアクセスします。gcloud ツールで Cloud Asset Inventory にアクセスするには、API を有効にしておく必要があります。API は Cloud Asset API コマンドを実行するプロジェクトでのみ有効にする必要があるのでご注意ください。
    Cloud Asset Inventory API を有効にする
  • ローカル クライアントに Cloud SDK をインストールします。

gcloud コマンドライン ツールの使用

gcloud ツールを使用する前に、Cloud SDK ドキュメントをご確認ください。--help フラグを使用すると、ツール、リソース、コマンドのヘルプを表示できます。

gcloud alpha asset --help

--help フラグで表示されるヘルプは、gcloud alpha asset に関する Cloud SDK リファレンスでも参照できます。

サービス アカウントの有効化

Cloud Asset API を呼び出すには、秘密鍵で認証されたサービス アカウントが必要です。サービス アカウントは、Cloud Asset API コマンドを実行するプロジェクト用に作成する必要があります。

  1. Cloud Asset API 対応プロジェクトでまだサービス アカウントを作成していない場合は、次のコマンドで新しいサービス アカウントを作成します。

    gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \
           --display-name "SERVICE_ACCOUNT_DISPLAY_NAME"
    

  2. サービス アカウントの秘密鍵を作成します。

    gcloud iam service-accounts keys create YOUR_FILE_PATH/key.json \
           --iam-account SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
    

  3. 次のコマンドで、gcloud ツールで使用するサービス アカウントを有効にします。

    gcloud auth activate-service-account SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
           --key-file=YOUR_FILE_PATH/key.json
    

  4. 新しいサービス アカウントに対して、メタデータをエクスポートするプロジェクトの cloudasset.viewer Cloud IAM 役割を付与します。このプロジェクトは、Cloud Asset API 対応プロジェクトと同じでもかまいません。

    gcloud projects add-iam-policy-binding EXPORT_TARGET_PROJECT_ID \
           --member serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
           --role roles/cloudasset.viewer
    

これで、Cloud Asset API を呼び出せるようになりました。

gcloud アセットの呼び出し

以下では、プロジェクトに対する gcloud Cloud Asset API 呼び出しの例をいくつか示します。Cloud Asset API 呼び出しは、フォルダと組織でも同様に機能します。

ExportAssets

Cloud Storage ファイルに、特定のタイムスタンプにおけるすべてのアセット メタデータをエクスポートします。エクスポートしたメタデータを保存する Cloud Storage バケットは、エクスポートを実行する Cloud Asset API 対応プロジェクトに含まれている必要があります。

gcloud alpha asset export \
   --content-type resource \
   --project PROJECT_ID \
   --output-path "gs://YOUR_BUCKET/NEW_FILE"

PROJECT_ID は、メタデータをエクスポートするプロジェクトの ID です。このプロジェクトは、エクスポートを実行する Cloud Asset API 対応プロジェクトでも、別のプロジェクトでもかまいません。

GetOperation

エクスポートのステータスを確認します。次のコマンドと OPERATION_NUMBER は、エクスポート コマンドを実行した直後に gcloud ツールに表示されます。

gcloud alpha asset operations describe projects/PROJECT_ID/operations/ExportAssets/CONTENT_TYPE/OPERATION_NUMBER

BatchGetAssetsHistory

指定された期間内の複数のアセットの履歴を取得します。指定したアセットの一定期間における作成イベント、削除イベント、更新イベントがすべて表示されます。

gcloud alpha asset get-history --asset-names="//storage.googleapis.com/BUCKET_NAME","otherAssetNames" \
   --content-type resource \
   --start-time '2018-10-03T00:00:00Z' \
   --project PROJECT_ID

期間に指定できる最も新しい開始日時(start-time)は 2018-10-03T00:00:00Z です。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Resource Manager のドキュメント