アクセス制御

このページでは、Cloud Asset API で使用可能なアクセス制御オプションについて説明します。

概要

Cloud Asset Inventory は、アクセス制御に Identity and Access Management(IAM)を使用します。

Cloud Asset API では、プロジェクト レベルまたは組織レベルでアクセス制御を構成できます。 たとえば、プロジェクト内のすべての Cloud Asset Inventory リソースへのアクセス権をデベロッパーのグループに付与することができます。

IAM とその機能の詳細については、IAM デベロッパー ガイドをご覧ください。特に、IAM ポリシーの管理に関するセクションをご覧ください。

すべての Cloud Asset Inventory API メソッドで、呼び出し元が必要な権限を持っている必要があります。詳細については、権限と役割をご覧ください。

権限とロール

このセクションでは、IAM でサポートされる Cloud Asset API の権限とロールを簡単に説明します。

必要な権限

次の表に、Cloud Asset API の各 API メソッドの呼び出し、または API を使用する Google Cloud ツール(Google Cloud Console や Cloud SDK など)を使用したタスク実行のために呼び出し元に付与する必要がある権限を示します。

権限 API メソッド
cloudasset.assets.searchAllResources *.searchAllResources
cloudasset.assets.searchAllIamPolicies *.searchAllIamPolicies
cloudasset.assets.analyzeIamPolicy
*.analyzeIamPolicy
*.analyzeIamPolicyLongrunning
cloudasset.feeds.get *.getFeed
cloudasset.feeds.list *.listFeeds
cloudasset.feeds.delete *.deleteFeed
content_type に基づく cloudasset.feeds.create
cloudasset.assets.exportResource、または
cloudasset.assets.exportIamPolicy
*.createFeed
content_type に基づく cloudasset.feeds.update
cloudasset.assets.exportResource、または
cloudasset.assets.exportIamPolicy
*.updateFeed
content_type に基づく cloudasset.assets.exportResource
cloudasset.assets.exportIamPolicy
cloudasset.assets.exportOrgPolicy
cloudasset.assets.exportOSInventories、または
cloudasset.assets.exportAccessPolicy
*.batchGetAssetsHistory
*.exportAssets
*.operations.get
cloudasset.assets.analyzeMove *.analyzeMove

なお、*.exportAssets API を使用してコンテンツ タイプが RESOURCE または未指定の指定済みアセットタイプのリソース メタデータをエクスポートする場合、呼び出し元に cloudasset.assets.exportResource 権限が付与されていなければ、呼び出し元がリクエストで指定されている各アセットタイプに対し適切なリソースタイプごとの権限を持つことも求められます。

ロール

Cloud Asset Inventory には、次の 2 つの IAM ロールがあります。

  • Cloud Asset オーナー(roles/cloudasset.owner)。Cloud Asset メタデータに対する完全アクセス権を付与します。すべての cloudasset.* 権限と recommender.cloudAssetInsights.* 権限が付与されます。
  • Cloud Asset 閲覧者(roles/cloudasset.viewer)。Cloud Asset メタデータに対する読み取り専用権限を付与します。すべての cloudasset.assets.*cloudasset.feeds.* 権限は付与しません)、recommender.cloudAssetInsights.get 権限、recommender.cloudAssetInsights.list 権限を付与します。

必要な権限を含む適切なロールを選択してください。一般に、Cloud Asset オーナーのロールを付与されたユーザーのみが Cloud Asset API の呼び出しに必要な権限を付与し、すべてのメソッドを全面使用できます。

基本ロールには、以下の権限が含まれます。

  • オーナーのロール(roles/owner)では、すべての cloudasset.* 権限が付与されます。
  • 編集者のロール(roles/editor)では、cloudasset.assets.search* 権限と cloudasset.assets.analyzeIamPolicy 権限が付与されます。
  • 閲覧者のロール(roles/viewer)では、cloudasset.assets.search* 権限と cloudasset.assets.analyzeIamPolicy 権限が付与されます。

基本ロールには他の Google Cloud サービスに対する多くの権限が含まれ、意図したアクセス権の範囲が本来よりも大きくなる可能性があるため、基本ロールではなく、いずれかの Cloud Asset ロールを付与することをおすすめします。

アクセスを管理

組織、フォルダ、プロジェクト レベルでユーザーにロールを付与できます。詳細については、プロジェクト メンバーに対するアクセス権の付与、変更、取り消しをご覧ください。

VPC Service Controls

VPC Service Controls を Cloud Asset Inventory とともに使用することで、アセットのセキュリティを強化できます。VPC Service Controls の詳細については、VPC Service Controls の概要をご覧ください。

VPC Service Controls で Cloud Asset Inventory を使用する際の制限事項については、サポートされているプロダクトと制限事項をご覧ください。