Rôles et autorisations

Cloud Asset Inventory utilise la gestion de l'authentification et des accès (IAM) pour le contrôle des accès. Pour chaque méthode de l'API Cloud Asset Inventory, l'appelant doit disposer des autorisations nécessaires.

Rôles

Pour obtenir les autorisations nécessaires pour utiliser les métadonnées des composants, demandez à votre administrateur de vous accorder les rôles IAM suivants sur l'organisation, le dossier ou le projet:

Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Ces rôles prédéfinis contiennent les autorisations requises pour utiliser les métadonnées des composants. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Les autorisations suivantes sont requises pour utiliser les métadonnées des composants:

  • Pour afficher les métadonnées d'un élément :
    • cloudasset.assets.*
    • recommender.cloudAssetInsights.get
    • recommender.cloudAssetInsights.list
    • serviceusage.services.use
  • Pour afficher les métadonnées des éléments et travailler avec des flux :
    • cloudasset.*
    • recommender.cloudAssetInsights.*
    • serviceusage.services.use

Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.

Autorisations

Le tableau suivant répertorie les autorisations dont l'appelant doit disposer pour appeler chaque méthode d'API dans Cloud Asset Inventory ou pour effectuer des tâches à l'aide d'outils qui utilisent Cloud Asset Inventory, tels que la console Google Cloud ou la CLI gcloud. Google Cloud

Les rôles Lecteur d'éléments Cloud (roles/cloudasset.viewer) et Propriétaire d'éléments Cloud (roles/cloudasset.owner) incluent de nombreuses de ces autorisations. Si l'appelant a reçu l'un de ces rôles et le rôle Consommateur Service Usage (roles/serviceusage.serviceUsageConsumer), il peut déjà disposer des autorisations nécessaires pour utiliser Cloud Asset Inventory.

RPC

Méthode Autorisations requises
Toutes les API
Tous les appels de l'inventaire des éléments cloud

Tous les appels à Cloud Asset Inventory nécessitent l'autorisation serviceusage.services.use.

API d'analyse

AnalyzeIamPolicy

AnalyzeIamPolicyLongRunning

BatchGetEffectiveIamPolicies

Toutes les autorisations suivantes:

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

AnalyzeMove

cloudasset.assets.analyzeMove

AnalyzeOrgPolicies

AnalyzeOrgPolicyGovernedContainers

Toutes les autorisations suivantes:

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

AnalyzeOrgPolicyGovernedAssets

Toutes les autorisations suivantes:

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

BatchGetAssetsHistory

ExportAssets

L'une des autorisations suivantes, en fonction du type de contenu:

  • cloudasset.assets.exportAccessPolicy

    Lorsque vous utilisez le type de contenu ACCESS_POLICY.

  • cloudasset.assets.exportIamPolicy

    Lorsque vous utilisez le type de contenu IAM_POLICY.

  • cloudasset.assets.exportOrgPolicy

    Lorsque vous utilisez le type de contenu ORG_POLICY.

  • cloudasset.assets.exportOSInventories

    Lorsque vous utilisez le type de contenu OS_INVENTORY.

  • cloudasset.assets.exportResource

    Lorsque vous utilisez les types de contenu RELATIONSHIP ou RESOURCE.

Lorsque vous exportez des métadonnées d'un type de contenu non spécifié ou RESOURCE, au lieu d'accorder l'autorisation cloudasset.assets.exportResource à un compte, vous pouvez utiliser des autorisations pour chaque type de ressource.

ListAssets

L'une des autorisations suivantes, en fonction du type de contenu:

  • cloudasset.assets.listAccessPolicy
  • cloudasset.assets.listIamPolicy
  • cloudasset.assets.listOrgPolicy
  • cloudasset.assets.listOSInventories
  • cloudasset.assets.listResource pour les types de contenu RELATIONSHIP et RESOURCE.

QueryAssets

L'une des autorisations suivantes, en fonction du type de contenu:

  • cloudasset.assets.queryAccessPolicy
  • cloudasset.assets.queryIamPolicy
  • cloudasset.assets.queryOSInventories
  • cloudasset.assets.queryResource pour les types de contenu RELATIONSHIP et RESOURCE.
API de flux

CreateFeed

cloudasset.feeds.create

Vous devez également disposer de l'une des autorisations suivantes, en fonction du type de contenu:

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

DeleteFeed

cloudasset.feeds.delete

GetFeed

cloudasset.feeds.get

ListFeed

cloudasset.feeds.list

UpdateFeed

cloudasset.feeds.update

Vous devez également disposer de l'une des autorisations suivantes, en fonction du type de contenu:

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

SearchAllIamPolicies

cloudasset.assets.searchAllIamPolicies

SearchAllResources

cloudasset.assets.searchAllResources

Vous avez également besoin de cloudasset.assets.searchEnrichmentResourceOwners si vous recherchez une enrichissement du propriétaire de la ressource.

REST

Méthode Autorisations requises
Toutes les API
Tous les appels de l'inventaire des éléments cloud

Tous les appels à Cloud Asset Inventory nécessitent l'autorisation serviceusage.services.use.

API d'analyse

analyzeIamPolicy

analyzeIamPolicyLongRunning

effectiveIamPolicies.batchGet

Toutes les autorisations suivantes:

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

analyzeMove

cloudasset.assets.analyzeMove

analyzeOrgPolicies

analyzeOrgPolicyGovernedContainers

Toutes les autorisations suivantes:

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

analyzeOrgPolicyGovernedAssets

Toutes les autorisations suivantes:

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

batchGetAssetsHistory

exportAssets

L'une des autorisations suivantes, en fonction du type de contenu:

  • cloudasset.assets.exportAccessPolicy

    Lorsque vous utilisez le type de contenu ACCESS_POLICY.

  • cloudasset.assets.exportIamPolicy

    Lorsque vous utilisez le type de contenu IAM_POLICY.

  • cloudasset.assets.exportOrgPolicy

    Lorsque vous utilisez le type de contenu ORG_POLICY.

  • cloudasset.assets.exportOSInventories

    Lorsque vous utilisez le type de contenu OS_INVENTORY.

  • cloudasset.assets.exportResource

    Lorsque vous utilisez les types de contenu RELATIONSHIP ou RESOURCE.

Lorsque vous exportez des métadonnées d'un type de contenu non spécifié ou RESOURCE, au lieu d'accorder l'autorisation cloudasset.assets.exportResource à un compte, vous pouvez utiliser des autorisations pour chaque type de ressource.

assets.list

L'une des autorisations suivantes, en fonction du type de contenu:

  • cloudasset.assets.listAccessPolicy
  • cloudasset.assets.listIamPolicy
  • cloudasset.assets.listOrgPolicy
  • cloudasset.assets.listOSInventories
  • cloudasset.assets.listResource pour les types de contenu RELATIONSHIP et RESOURCE.

queryAssets

L'une des autorisations suivantes, en fonction du type de contenu:

  • cloudasset.assets.queryAccessPolicy
  • cloudasset.assets.queryIamPolicy
  • cloudasset.assets.queryOSInventories
  • cloudasset.assets.queryResource pour les types de contenu RELATIONSHIP et RESOURCE.
API de flux

feeds.create

cloudasset.feeds.create

Vous devez également disposer de l'une des autorisations suivantes, en fonction du type de contenu:

  • 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

Vous devez également disposer de l'une des autorisations suivantes, en fonction du type de contenu:

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

searchAllIamPolicies

cloudasset.assets.searchAllIamPolicies

searchAllResources

cloudasset.assets.searchAllResources

Vous avez également besoin de cloudasset.assets.searchEnrichmentResourceOwners si vous recherchez une enrichissement du propriétaire de la ressource.

gcloud

Énoncé de positionnement Autorisations requises
Toutes les API
Tous les appels de l'inventaire des éléments cloud

Tous les appels à Cloud Asset Inventory nécessitent l'autorisation serviceusage.services.use.

API d'analyse

analyze-iam-policy

analyze-iam-policy-longrunning

get-effective-iam-policy

Toutes les autorisations suivantes:

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

analyze-move

cloudasset.assets.analyzeMove

analyze-org-policies

analyze-org-policy-governed-containers

Toutes les autorisations suivantes:

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

analyze-org-policy-governed-assets

Toutes les autorisations suivantes:

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

get-history

export

L'une des autorisations suivantes, en fonction du type de contenu:

  • cloudasset.assets.exportAccessPolicy

    Lorsque vous utilisez le type de contenu ACCESS_POLICY.

  • cloudasset.assets.exportIamPolicy

    Lorsque vous utilisez le type de contenu IAM_POLICY.

  • cloudasset.assets.exportOrgPolicy

    Lorsque vous utilisez le type de contenu ORG_POLICY.

  • cloudasset.assets.exportOSInventories

    Lorsque vous utilisez le type de contenu OS_INVENTORY.

  • cloudasset.assets.exportResource

    Lorsque vous utilisez les types de contenu RELATIONSHIP ou RESOURCE.

Lorsque vous exportez des métadonnées d'un type de contenu non spécifié ou RESOURCE, au lieu d'accorder l'autorisation cloudasset.assets.exportResource à un compte, vous pouvez utiliser des autorisations pour chaque type de ressource.

list

L'une des autorisations suivantes, en fonction du type de contenu:

  • cloudasset.assets.listAccessPolicy
  • cloudasset.assets.listIamPolicy
  • cloudasset.assets.listOrgPolicy
  • cloudasset.assets.listOSInventories
  • cloudasset.assets.listResource pour les types de contenu RELATIONSHIP et RESOURCE.

query

L'une des autorisations suivantes, en fonction du type de contenu:

  • cloudasset.assets.queryAccessPolicy
  • cloudasset.assets.queryIamPolicy
  • cloudasset.assets.queryOSInventories
  • cloudasset.assets.queryResource pour les types de contenu RELATIONSHIP et RESOURCE.
API de flux

feeds create

cloudasset.feeds.create

Vous devez également disposer de l'une des autorisations suivantes, en fonction du type de contenu:

  • 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

Vous devez également disposer de l'une des autorisations suivantes, en fonction du type de contenu:

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

search-all-iam-policies

cloudasset.assets.searchAllIamPolicies

search-all-resources

cloudasset.assets.searchAllResources

Vous avez également besoin de cloudasset.assets.searchEnrichmentResourceOwners si vous recherchez une enrichissement du propriétaire de la ressource.

Autorisations d'exportation pour chaque type de ressource

Accorder l'autorisation cloudasset.assets.exportResource à un utilisateur lui permet d'exporter tous les types de ressources. Pour limiter les types de ressources qu'un utilisateur peut exporter, vous pouvez accorder des autorisations pour chaque type de ressource.

Par exemple, accorder à un utilisateur cloudasset.assets.exportComputeDisks signifie qu'il ne peut exporter que le type de ressource compute.googleapis.com/Disk.

Les autorisations d'exportation de ressources ne s'appliquent qu'aux types de contenu RESOURCE et non spécifiés.

Service Type de ressource Autorisation d'exportation des ressources
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 peut être utilisé avec Cloud Asset Inventory pour renforcer la sécurité de vos éléments. Pour en savoir plus sur VPC Service Controls, consultez la page Présentation de VPC Service Controls.

Pour en savoir plus sur les limites liées à l'utilisation de Cloud Asset Inventory avec VPC Service Controls, consultez la page Produits compatibles et limites.