ロールと権限

Cloud Asset Inventory は、アクセス制御に Identity and Access Management(IAM)を使用します。 すべての Cloud Asset Inventory API メソッドで、呼び出し元が必要な権限を持っている必要があります。

ロール

アセット メタデータを操作するために必要な権限を取得するには、組織、フォルダ、またはプロジェクトに対する次の IAM ロールを付与するよう管理者に依頼します。

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

これらの事前定義ロールには、アセット メタデータの操作に必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

アセット メタデータを操作するには、次の権限が必要です。

  • アセットのメタデータを表示するには:
    • cloudasset.assets.*
    • recommender.cloudAssetInsights.get
    • recommender.cloudAssetInsights.list
    • serviceusage.services.use
  • アセットのメタデータを表示し、フィードを操作するには:
    • cloudasset.*
    • recommender.cloudAssetInsights.*
    • serviceusage.services.use

カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。

権限

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

Cloud Asset 閲覧者(roles/cloudasset.viewer)と Cloud Asset オーナー(roles/cloudasset.owner)のロールには、これらの権限の多くが含まれています。呼び出し元にこれらのロールのいずれかと Service Usage ユーザー(roles/serviceusage.serviceUsageConsumer)ロールが付与されている場合、Cloud Asset Inventory の使用に必要な権限がすでに付与されている可能性があります。

RPC

メソッド 必要な権限
すべての API
すべての Cloud Asset Inventory 呼び出し

Cloud Asset Inventory のすべての呼び出しには、serviceusage.services.use 権限が必要です。

分析 API

AnalyzeIamPolicy

AnalyzeIamPolicyLongRunning

BatchGetEffectiveIamPolicies

次のすべての権限:

  • cloudasset.assets.analyzeIamPolicy
  • cloudasset.assets.searchAllIamPolicies
  • cloudasset.assets.searchAllResources

AnalyzeMove

cloudasset.assets.analyzeMove

AnalyzeOrgPolicies

AnalyzeOrgPolicyGovernedContainers

次のすべての権限:

  • cloudasset.assets.analyzeOrgPolicy
  • cloudasset.assets.searchAllResources

AnalyzeOrgPolicyGovernedAssets

次のすべての権限:

  • cloudasset.assets.analyzeOrgPolicy
  • cloudasset.assets.searchAllIamPolicies
  • cloudasset.assets.searchAllResources
Inventory API

BatchGetAssetsHistory

ExportAssets

コンテンツ タイプに応じて、次のいずれかの権限。

  • cloudasset.assets.exportAccessPolicy

    ACCESS_POLICY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportIamPolicy

    IAM_POLICY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportOrgPolicy

    ORG_POLICY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportOSInventories

    OS_INVENTORY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportResource

    RELATIONSHIP または RESOURCE のコンテンツ タイプを使用する場合。

未指定または RESOURCE コンテンツ タイプのメタデータをエクスポートする場合は、アカウントに cloudasset.assets.exportResource 権限を付与する代わりに、リソースタイプごとの権限を使用できます。

ListAssets

コンテンツ タイプに応じて、次のいずれかの権限。

  • cloudasset.assets.listAccessPolicy
  • cloudasset.assets.listIamPolicy
  • cloudasset.assets.listOrgPolicy
  • cloudasset.assets.listOSInventories
  • RELATIONSHIP コンテンツ タイプおよび RESOURCE コンテンツ タイプの場合は cloudasset.assets.listResource

QueryAssets

コンテンツ タイプに応じて、次のいずれかの権限。

  • cloudasset.assets.queryAccessPolicy
  • cloudasset.assets.queryIamPolicy
  • cloudasset.assets.queryOSInventories
  • RELATIONSHIPRESOURCE の両方のコンテンツ タイプ用の cloudasset.assets.queryResource
Feed API

CreateFeed

cloudasset.feeds.create

また、コンテンツ タイプに応じて、次のいずれかの権限も必要です。

  • cloudasset.assets.exportIamPolicy
  • cloudasset.assets.exportResource

DeleteFeed

cloudasset.feeds.delete

GetFeed

cloudasset.feeds.get

ListFeed

cloudasset.feeds.list

UpdateFeed

cloudasset.feeds.update

また、コンテンツ タイプに応じて、次のいずれかの権限も必要です。

  • cloudasset.assets.exportIamPolicy
  • cloudasset.assets.exportResource
Search API

SearchAllIamPolicies

cloudasset.assets.searchAllIamPolicies

SearchAllResources

cloudasset.assets.searchAllResources

また、リソース オーナーの拡充を検索する場合は cloudasset.assets.searchEnrichmentResourceOwners も必要です。

REST

メソッド 必要な権限
すべての API
すべての Cloud Asset Inventory 呼び出し

Cloud Asset Inventory のすべての呼び出しには、serviceusage.services.use 権限が必要です。

分析 API

analyzeIamPolicy

analyzeIamPolicyLongRunning

effectiveIamPolicies.batchGet

次のすべての権限:

  • cloudasset.assets.analyzeIamPolicy
  • cloudasset.assets.searchAllIamPolicies
  • cloudasset.assets.searchAllResources

analyzeMove

cloudasset.assets.analyzeMove

analyzeOrgPolicies

analyzeOrgPolicyGovernedContainers

次のすべての権限:

  • cloudasset.assets.analyzeOrgPolicy
  • cloudasset.assets.searchAllResources

analyzeOrgPolicyGovernedAssets

次のすべての権限:

  • cloudasset.assets.analyzeOrgPolicy
  • cloudasset.assets.searchAllIamPolicies
  • cloudasset.assets.searchAllResources
Inventory API

batchGetAssetsHistory

exportAssets

コンテンツ タイプに応じて、次のいずれかの権限。

  • cloudasset.assets.exportAccessPolicy

    ACCESS_POLICY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportIamPolicy

    IAM_POLICY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportOrgPolicy

    ORG_POLICY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportOSInventories

    OS_INVENTORY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportResource

    RELATIONSHIP または RESOURCE のコンテンツ タイプを使用する場合。

未指定または RESOURCE コンテンツ タイプのメタデータをエクスポートする場合は、アカウントに cloudasset.assets.exportResource 権限を付与する代わりに、リソースタイプごとの権限を使用できます。

assets.list

コンテンツ タイプに応じて、次のいずれかの権限。

  • cloudasset.assets.listAccessPolicy
  • cloudasset.assets.listIamPolicy
  • cloudasset.assets.listOrgPolicy
  • cloudasset.assets.listOSInventories
  • RELATIONSHIP コンテンツ タイプおよび RESOURCE コンテンツ タイプの場合は cloudasset.assets.listResource

queryAssets

コンテンツ タイプに応じて、次のいずれかの権限。

  • cloudasset.assets.queryAccessPolicy
  • cloudasset.assets.queryIamPolicy
  • cloudasset.assets.queryOSInventories
  • RELATIONSHIPRESOURCE の両方のコンテンツ タイプ用の cloudasset.assets.queryResource
Feed API

feeds.create

cloudasset.feeds.create

また、コンテンツ タイプに応じて、次のいずれかの権限も必要です。

  • cloudasset.assets.exportIamPolicy
  • cloudasset.assets.exportResource

feeds.delete

cloudasset.feeds.delete

feeds.get

cloudasset.feeds.get

feeds.list

cloudasset.feeds.list

feeds.patch

cloudasset.feeds.update

また、 コンテンツ タイプに応じて、次のいずれかの権限も必要です。

  • cloudasset.assets.exportIamPolicy
  • cloudasset.assets.exportResource
Search API

searchAllIamPolicies

cloudasset.assets.searchAllIamPolicies

searchAllResources

cloudasset.assets.searchAllResources

また、リソース オーナーの拡充を検索する場合は cloudasset.assets.searchEnrichmentResourceOwners も必要です。

gcloud

ポジショニングの文言 必要な権限
すべての API
すべての Cloud Asset Inventory 呼び出し

Cloud Asset Inventory のすべての呼び出しには、serviceusage.services.use 権限が必要です。

分析 API

analyze-iam-policy

analyze-iam-policy-longrunning

get-effective-iam-policy

次のすべての権限:

  • cloudasset.assets.analyzeIamPolicy
  • cloudasset.assets.searchAllIamPolicies
  • cloudasset.assets.searchAllResources

analyze-move

cloudasset.assets.analyzeMove

analyze-org-policies

analyze-org-policy-governed-containers

次のすべての権限:

  • cloudasset.assets.analyzeOrgPolicy
  • cloudasset.assets.searchAllResources

analyze-org-policy-governed-assets

次のすべての権限:

  • cloudasset.assets.analyzeOrgPolicy
  • cloudasset.assets.searchAllIamPolicies
  • cloudasset.assets.searchAllResources
Inventory API

get-history

export

コンテンツ タイプに応じて、次のいずれかの権限。

  • cloudasset.assets.exportAccessPolicy

    ACCESS_POLICY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportIamPolicy

    IAM_POLICY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportOrgPolicy

    ORG_POLICY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportOSInventories

    OS_INVENTORY コンテンツ タイプを使用する場合。

  • cloudasset.assets.exportResource

    RELATIONSHIP または RESOURCE のコンテンツ タイプを使用する場合。

未指定または RESOURCE コンテンツ タイプのメタデータをエクスポートする場合は、アカウントに cloudasset.assets.exportResource 権限を付与する代わりに、リソースタイプごとの権限を使用できます。

list

コンテンツ タイプに応じて、次のいずれかの権限。

  • cloudasset.assets.listAccessPolicy
  • cloudasset.assets.listIamPolicy
  • cloudasset.assets.listOrgPolicy
  • cloudasset.assets.listOSInventories
  • RELATIONSHIP コンテンツ タイプおよび RESOURCE コンテンツ タイプの場合は cloudasset.assets.listResource

query

コンテンツ タイプに応じて、次のいずれかの権限。

  • cloudasset.assets.queryAccessPolicy
  • cloudasset.assets.queryIamPolicy
  • cloudasset.assets.queryOSInventories
  • RELATIONSHIPRESOURCE の両方のコンテンツ タイプ用の cloudasset.assets.queryResource
Feed API

feeds create

cloudasset.feeds.create

また、コンテンツ タイプに応じて、次のいずれかの権限も必要です。

  • cloudasset.assets.exportIamPolicy
  • cloudasset.assets.exportResource

feeds delete

cloudasset.feeds.delete

feeds describe

cloudasset.feeds.get

feeds list

cloudasset.feeds.list

feeds update

cloudasset.feeds.update

また、コンテンツ タイプに応じて、次のいずれかの権限も必要です。

  • cloudasset.assets.exportIamPolicy
  • cloudasset.assets.exportResource
Search API

search-all-iam-policies

cloudasset.assets.searchAllIamPolicies

search-all-resources

cloudasset.assets.searchAllResources

また、リソース オーナーの拡充を検索する場合は cloudasset.assets.searchEnrichmentResourceOwners も必要です。

リソースタイプごとのエクスポート権限

ユーザーに cloudasset.assets.exportResource 権限を付与すると、ユーザーはすべてのリソースタイプをエクスポートできます。ユーザーがエクスポートできるリソースタイプを制限するには、代わりにリソースタイプごとに権限を付与します。

たとえば、ユーザーに cloudasset.assets.exportComputeDisks を付与すると、リソースタイプ compute.googleapis.com/Disk 以外のものをエクスポートできなくなります。

リソースのエクスポート権限は、RESOURCE と未指定のコンテンツ タイプにのみ適用されます。

サービス リソースの種類 リソースのエクスポート権限
App Engine appengine.googleapis.com/Application cloudasset.assets.exportAppengineApplications
appengine.googleapis.com/Service cloudasset.assets.exportAppengineServices
appengine.googleapis.com/Version cloudasset.assets.exportAppengineVersions
BigQuery bigquery.googleapis.com/Dataset cloudasset.assets.exportBigqueryDatasets
bigquery.googleapis.com/Table cloudasset.assets.exportBigqueryTables
Bigtable bigtableadmin.googleapis.com/Cluster cloudasset.assets.exportBigtableCluster
bigtableadmin.googleapis.com/Instance cloudasset.assets.exportBigtableInstance
bigtableadmin.googleapis.com/Table cloudasset.assets.exportBigtableTable
Cloud Billing cloudbilling.googleapis.com/BillingAccount cloudasset.assets.exportCloudbillingBillingAccounts
Cloud DNS dns.googleapis.com/ManagedZone cloudasset.assets.exportDnsManagedZones
dns.googleapis.com/Policy cloudasset.assets.exportDnsPolicies
Cloud Key Management Service cloudkms.googleapis.com/CryptoKey cloudasset.assets.exportCloudkmsCryptoKeys
cloudkms.googleapis.com/CryptoKeyVersion cloudasset.assets.exportCloudkmsCryptoKeyVersions
cloudkms.googleapis.com/ImportJob cloudasset.assets.exportCloudkmsImportJobs
cloudkms.googleapis.com/KeyRing cloudasset.assets.exportCloudkmsKeyRings
Cloud OS Config osconfig.googleapis.com/PatchDeployment cloudasset.assets.exportPatchDeployments
Spanner spanner.googleapis.com/Backup cloudasset.assets.exportSpannerBackups
spanner.googleapis.com/Database cloudasset.assets.exportSpannerDatabases
spanner.googleapis.com/Instance cloudasset.assets.exportSpannerInstances
Cloud SQL sqladmin.googleapis.com/Instance cloudasset.assets.exportSqladminInstances
Cloud Storage storage.googleapis.com/Bucket cloudasset.assets.exportStorageBuckets
Compute Engine compute.googleapis.com/Address cloudasset.assets.exportComputeAddress
compute.googleapis.com/Autoscaler cloudasset.assets.exportComputeAutoscalers
compute.googleapis.com/BackendBucket cloudasset.assets.exportComputeBackendBuckets
compute.googleapis.com/BackendService cloudasset.assets.exportComputeBackendServices
compute.googleapis.com/Disk cloudasset.assets.exportComputeDisks
compute.googleapis.com/Firewall cloudasset.assets.exportComputeFirewalls
compute.googleapis.com/ForwardingRule cloudasset.assets.exportComputeForwardingRules
compute.googleapis.com/GlobalAddress cloudasset.assets.exportComputeGlobalAddress
compute.googleapis.com/HealthCheck cloudasset.assets.exportComputeHealthChecks
compute.googleapis.com/HttpHealthCheck cloudasset.assets.exportComputeHttpHealthChecks
compute.googleapis.com/HttpsHealthCheck cloudasset.assets.exportComputeHttpsHealthChecks
compute.googleapis.com/Image cloudasset.assets.exportComputeImages
compute.googleapis.com/Instance cloudasset.assets.exportComputeInstances
compute.googleapis.com/InstanceGroup cloudasset.assets.exportComputeInstanceGroups
compute.googleapis.com/InstanceGroupManager cloudasset.assets.exportComputeInstanceGroupManagers
compute.googleapis.com/InstanceTemplate cloudasset.assets.exportComputeInstanceTemplates
compute.googleapis.com/Interconnect cloudasset.assets.exportComputeInterconnect
compute.googleapis.com/InterconnectAttachment cloudasset.assets.exportComputeInterconnectAttachment
compute.googleapis.com/License cloudasset.assets.exportComputeLicenses
compute.googleapis.com/Network cloudasset.assets.exportComputeNetworks
compute.googleapis.com/Project cloudasset.assets.exportComputeProjects
compute.googleapis.com/RegionDisk cloudasset.assets.exportComputeRegionDisk
compute.googleapis.com/Route cloudasset.assets.exportComputeRoutes
compute.googleapis.com/Router cloudasset.assets.exportComputeRouters
compute.googleapis.com/Snapshot cloudasset.assets.exportComputeSnapshots
compute.googleapis.com/SslCertificate cloudasset.assets.exportComputeSslCertificates
compute.googleapis.com/Subnetwork cloudasset.assets.exportComputeSubnetworks
compute.googleapis.com/TargetHttpProxy cloudasset.assets.exportComputeTargetHttpProxies
compute.googleapis.com/TargetHttpsProxy cloudasset.assets.exportComputeTargetHttpsProxies
compute.googleapis.com/TargetInstance cloudasset.assets.exportComputeTargetInstances
compute.googleapis.com/TargetPool cloudasset.assets.exportComputeTargetPools
compute.googleapis.com/TargetTcpProxy cloudasset.assets.exportComputeTargetTcpProxies
compute.googleapis.com/TargetSslProxy cloudasset.assets.exportComputeTargetSslProxies
compute.googleapis.com/TargetVpnGateway cloudasset.assets.exportComputeTargetVpnGateways
compute.googleapis.com/UrlMap cloudasset.assets.exportComputeUrlMaps
compute.googleapis.com/VpnTunnel cloudasset.assets.exportComputeVpnTunnels
Dataproc dataproc.googleapis.com/Cluster cloudasset.assets.exportDataprocClusters
dataproc.googleapis.com/Job cloudasset.assets.exportDataprocJobs
Google Kubernetes Engine container.googleapis.com/Cluster cloudasset.assets.exportContainerClusters
container.googleapis.com/NodePool cloudasset.assets.exportContainerNodepool
k8s.io/Namespace cloudasset.assets.exportContainerNamespace
k8s.io/Node cloudasset.assets.exportContainerNode
k8s.io/Pod cloudasset.assets.exportContainerPod
rbac.authorization.k8s.io/ClusterRole cloudasset.assets.exportContainerClusterrole
rbac.authorization.k8s.io/ClusterRoleBinding cloudasset.assets.exportContainerClusterrolebinding
rbac.authorization.k8s.io/Role cloudasset.assets.exportContainerRole
rbac.authorization.k8s.io/RoleBinding cloudasset.assets.exportContainerRolebinding
IAM iam.googleapis.com/Role cloudasset.assets.exportIamRoles
iam.googleapis.com/ServiceAccount cloudasset.assets.exportIamServiceAccounts
Pub/Sub pubsub.googleapis.com/Subscription cloudasset.assets.exportPubsubSubscriptions
pubsub.googleapis.com/Topic cloudasset.assets.exportPubsubTopics
Resource Manager cloudresourcemanager.googleapis.com/Folder cloudasset.assets.exportCloudresourcemanagerFolders
cloudresourcemanager.googleapis.com/Organization cloudasset.assets.exportCloudresourcemanagerOrganizations
cloudresourcemanager.googleapis.com/Project cloudasset.assets.exportCloudresourcemanagerProjects

VPC Service Controls

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

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