Liste as dependências do serviço

A ativação hierárquica de serviços permite-lhe gerir a ativação de serviços que é herdada através da hierarquia de recursos. Google Cloud Para mais informações, consulte a vista geral.

Muitos Google Cloud serviços precisam de outros serviços para funcionar. Quando ativa um serviço através da ativação hierárquica de serviços, as respetivas dependências necessárias são adicionadas automaticamente ao ConsumerPolicy. Um grupo de dependências de serviços contém estes serviços dependentes, que pode listar para os compreender e gerir melhor.

Este documento mostra-lhe como usar a CLI Google Cloud para listar as dependências de serviços para projetos, pastas e organizações.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Install the Google Cloud CLI.

  3. Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.

  4. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  5. Create or select a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  6. Se estiver a usar um projeto existente para este guia, verifique se tem as autorizações necessárias para concluir este guia. Se criou um novo projeto, já tem as autorizações necessárias.

  7. Verify that billing is enabled for your Google Cloud project.

  8. Enable the Service Usage API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable serviceusage.googleapis.com
  9. Install the Google Cloud CLI.

  10. Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.

  11. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  12. Create or select a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  13. Se estiver a usar um projeto existente para este guia, verifique se tem as autorizações necessárias para concluir este guia. Se criou um novo projeto, já tem as autorizações necessárias.

  14. Verify that billing is enabled for your Google Cloud project.

  15. Enable the Service Usage API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable serviceusage.googleapis.com
  16. Se não indicar o Google Cloud recurso que quer gerir, os comandos neste documento são predefinidos para o projeto atual. Por exemplo, gcloud beta services groups list-members bigquery.googleapis.com dependencies lista os membros do projeto atual.

    Pode obter o ID do projeto atual:

    gcloud config list --format='text(core.project)'
  17. Funções necessárias

    Para obter as autorizações de que precisa para listar as dependências de serviços, peça ao seu administrador para lhe conceder a função de Visualizador de utilização de serviços (roles/serviceusage.serviceUsageViewer) do IAM no seu recurso de destino. Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

    Esta função predefinida contém as autorizações necessárias para listar as dependências de serviços. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:

    Autorizações necessárias

    São necessárias as seguintes autorizações para listar as dependências de serviços:

    • Listar membros do grupo de dependências: serviceusage.groups.listMembers
    • Listar membros do grupo de dependências expandido: serviceusage.groups.listExpandedMembers

    Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.

    Liste os membros do grupo de dependências

    Pode listar os membros diretos de um grupo de dependência de serviços para um projeto, uma pasta ou uma organização através do comando gcloud beta services groups list-members.

    Projeto

    gcloud beta services groups list-members  SERVICE GROUP \
        --project=PROJECT_ID
    

    Substitua o seguinte:

    • SERVICE: o nome do serviço para o qual quer listar os membros.
    • GROUP: o nome do grupo de dependências de serviços para o qual quer listar os membros. O grupo principal suportado é dependencies.
    • PROJECT_ID: o seu Google Cloud ID do projeto. Em alternativa, omita a flag para usar o projeto atual como predefinição.

    Pasta

    gcloud beta services groups list-members  SERVICE  GROUP \
        --folder=FOLDER_ID
    

    Substitua o seguinte:

    • SERVICE: o nome do serviço para o qual quer listar os membros.
    • GROUP: o nome do grupo de dependências de serviços para o qual quer listar os membros. O grupo principal suportado é dependencies.
    • FOLDER_ID: o seu Google Cloud ID da pasta.

    Organização

    gcloud beta services groups list-members  SERVICE  GROUP \
        --organization=ORGANIZATION_ID
    

    Substitua o seguinte:

    • SERVICE: o nome do serviço para o qual quer listar os membros.
    • GROUP: o nome do grupo de dependências de serviços para o qual quer listar os membros. O grupo principal suportado é dependencies.
    • ORGANIZATION_ID: o Google Cloud ID do recurso da sua organização.

    Pode usar outras flags para filtrar e limitar os membros apresentados.

    Liste os membros do grupo de dependências expandido

    Pode listar os membros expandidos de um grupo de dependências de serviços para um projeto, uma pasta ou uma organização através do comando gcloud beta services groups list-expanded-members.

    Este comando devolve uma lista simples de todas as dependências, incluindo as dos grupos aninhados, para fornecer uma lista completa e combinada de todas as dependências de serviços.

    Projeto

    gcloud beta services groups list-expanded-members SERVICE GROUP \
        --project=PROJECT_ID
    

    Substitua o seguinte:

    • SERVICE: o nome do serviço para o qual quer listar os membros.
    • GROUP: o nome do grupo de dependências de serviços para o qual quer listar os membros. O grupo principal suportado é dependencies.
    • PROJECT_ID: o seu Google Cloud ID do projeto. Em alternativa, omita a flag para usar o projeto atual como predefinição.

    Pasta

    gcloud beta services groups list-expanded-members SERVICE  GROUP \
        --folder=FOLDER_ID
    

    Substitua o seguinte:

    • SERVICE: o nome do serviço para o qual quer listar os membros.
    • GROUP: o nome do grupo de dependências de serviços para o qual quer listar os membros. O grupo principal suportado é dependencies.
    • FOLDER_ID: o seu Google Cloud ID da pasta.

    Organização

    gcloud beta services groups list-expanded-members SERVICE  GROUP \
        --organization=ORGANIZATION_ID
    

    Substitua o seguinte:

    • SERVICE: o nome do serviço para o qual quer listar os membros.
    • GROUP: o nome do grupo de dependências de serviços para o qual quer listar os membros. O grupo principal suportado é dependencies.
    • ORGANIZATION_ID: o Google Cloud ID do recurso da sua organização.

    Pode usar outras flags para filtrar e limitar os membros apresentados.

    Exemplos

    Listar membros do grupo de dependência direta

    • Apresentar dependências diretas do serviço BigQuery para o projeto atual:
      gcloud beta services groups list-members bigquery.googleapis.com dependencies

      Saída:

      NAME: services/analyticshub.googleapis.com
      REASON: BigQuery depends on this group to allow users to exchange data and analytics assets.
      
      NAME: services/bigquery.googleapis.com
      REASON: The service representing BigQuery which owns this dependency group and depends on the other members of this group.
      
      NAME: services/bigqueryconnection.googleapis.com
      REASON: BigQuery depends on this group to allow users to manage connections to external data sources.
      
      NAME: services/bigquerydatapolicy.googleapis.com
      REASON: BigQuery depends on this group to allow users to manage their data policies.
      
      ...
    • Tentativa de listar as dependências do serviço de chaves da API sem um grupo de dependências de serviço correspondente:
      gcloud beta services groups list-members apikeys.googleapis.com dependencies --project=test-project

      Saída:

      Listed 0 items.

    Fichas de grupos de dependências expandidos

    • A apresentar as dependências expandidas do serviço BigQuery para o projeto atual:
      gcloud beta services groups list-expanded-members bigquery.googleapis.com dependencies

      Saída:

      services/analyticshub.googleapis.com
      services/bigquery.googleapis.com
      services/bigqueryconnection.googleapis.com
      services/bigquerydatapolicy.googleapis.com
      services/bigquerydatatransfer.googleapis.com
      services/bigquerymigration.googleapis.com
      services/bigqueryreservation.googleapis.com
      services/bigquerystorage.googleapis.com
      services/cloudresourcemanager.googleapis.com
      services/dataform.googleapis.com
      services/dataplex.googleapis.com

    O que se segue?