Neste tópico, mostramos como configurar as permissões necessárias para chamar a API Cloud Asset Inventory.
Como realizar a autenticação
Antes de chamar a API Cloud Asset Inventory, você precisa fazer a autenticação como usuário final ou como conta de serviço. Para mais informações sobre autenticação, consulte Visão geral da autenticação.
Como conceder as permissões necessárias para a CLI gcloud
Para usar a CLI gcloud e acessar a API Cloud Asset Inventory,
conceder as permissões necessárias ao pai do recurso de destino, que pode ser
uma organização, um projeto ou uma pasta. Você deve especificar esse pai no
parent
das solicitações de API.
Se sua conta tiver o papel Proprietário do Cloud Asset (roles/cloudasset.owner
) ou o
papel básico de Proprietário (roles/owner
) no pai do recurso, ela terá permissões suficientes
para chamar a API Cloud Asset Inventory e você poderá passar para
Como fazer o download de credenciais. Para mais informações sobre
os papéis do Inventário de recursos do Cloud, consulte Papéis.
Concedendo papéis
Para conceder um papel a uma conta, conclua as etapas a seguir com a CLI do Google Cloud. Aprender Saiba como instalar e inicializar a CLI gcloud.
Conta de usuário
Para conceder os papéis necessários a uma conta de usuário, siga estas etapas:
Para fazer login com sua conta de usuário, execute o seguinte comando.
gcloud auth login USER_ACCOUNT_EMAIL
Conceda à sua conta de usuário o papel de visualizador de recursos do Cloud (
roles/cloudasset.viewer
) ou o papel de proprietário do recurso do Cloud (roles/cloudasset.owner
) no recurso raiz (pai). Esse projeto pode ser o projeto em que a API Cloud Asset Inventory está ativada.Para conceder o papel de visualizador de recursos do Cloud à conta de usuário, execute o comando a seguir.
gcloud projects add-iam-policy-binding TARGET_PROJECT_ID \ --member user:USER_ACCOUNT_EMAIL \ --role roles/cloudasset.viewer
É possível adicionar a flag
--billing-project
ao comandogcloud asset
para especificar o projeto de faturamento em que a API Cloud Asset Inventory está ativada.--billing-project PROJECT_ID
Se você especificar essa sinalização, a conta precisará da Permissão
serviceusage.services.use
no projetoPROJECT_ID
. Consulte Noções básicas sobre papéis. para conferir uma lista de papéis predefinidos que incluem essa permissão.
Conta de serviço
Para conceder os papéis necessários a uma conta de serviço, conclua as etapas a seguir. Para mais informações sobre contas de serviço, consulte Como criar e gerenciar contas de serviço.
Para criar uma nova conta de serviço, execute o seguinte comando. Se você já tiver uma conta de serviço em um projeto em que a API Cloud Asset Inventory estiver ativada, pule esta etapa.
gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \ --display-name "SERVICE_ACCOUNT_DISPLAY_NAME"
Conceda à sua conta de serviço o papel de visualizador de recursos do Cloud (
roles/cloudasset.viewer
) ou o papel Proprietário do recurso do Cloud (roles/cloudasset.owner
) no recurso raiz (pai). Esse projeto pode ser o mesmo em que a API Cloud Asset Inventory está ativada.Para conceder o papel Leitor de recursos do Cloud à sua conta de serviço, execute o comando a seguir.
gcloud projects add-iam-policy-binding TARGET_PROJECT_ID \ --member serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \ --role roles/cloudasset.viewer