Faça a gestão de Workload Identity Pools e fornecedores

Esta página explica como gerir os seus Workload Identity Pools existentes e os respetivos fornecedores de identidade.

Pode gerir pools e fornecedores através da Trusted Cloud consola, da CLI do Google Cloud ou da API REST.

Antes de começar

Crie um Workload Identity Pool. Consulte uma das seguintes páginas para saber como:

Funções necessárias

Para receber as autorizações de que precisa para gerir Workload Identity Pools e fornecedores, peça ao seu administrador que lhe conceda as seguintes funções da IAM no projeto:

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.

Estas funções predefinidas contêm as autorizações necessárias para gerir Workload Identity Pools e fornecedores. 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 gerir Workload Identity Pools e fornecedores:

  • Para ver Workload Identity Pools e fornecedores:
    • iam.googleapis.com/workloadIdentityPoolProviders.get
    • iam.googleapis.com/workloadIdentityPoolProviders.list
    • iam.googleapis.com/workloadIdentityPools.get
    • iam.googleapis.com/workloadIdentityPools.list
  • Para criar, atualizar e eliminar pools e fornecedores:
    • iam.googleapis.com/workloadIdentityPoolProviders.create
    • iam.googleapis.com/workloadIdentityPoolProviders.delete
    • iam.googleapis.com/workloadIdentityPoolProviders.undelete
    • iam.googleapis.com/workloadIdentityPoolProviders.update
    • iam.googleapis.com/workloadIdentityPools.create
    • iam.googleapis.com/workloadIdentityPools.delete
    • iam.googleapis.com/workloadIdentityPools.undelete
    • iam.googleapis.com/workloadIdentityPools.update

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

Faça a gestão dos Workload Identity Pools

Esta secção mostra como gerir os Workload Identity Pools.

Crie pools

Para criar Workload Identity Pools num projeto, faça o seguinte:

Consola

Na Trusted Cloud consola, aceda à página Workload Identity Pools.

Aceda aos Workload Identity Pools

gcloud

Execute o comando gcloud iam workload-identity-pools create.

REST

Ligue para projects.locations.workloadIdentityPools.create().

Apresentar grupos

Para apresentar uma lista de todos os Workload Identity Pools num projeto, faça o seguinte:

Consola

Na Trusted Cloud consola, aceda à página Workload Identity Pools.

Aceda aos Workload Identity Pools

gcloud

Execute o comando gcloud iam workload-identity-pools list.

REST

Ligue para projects.locations.workloadIdentityPools.list().

Receba um grupo

Para obter detalhes de um grupo do Workload Identity específico, faça o seguinte:

Consola

  1. Na Trusted Cloud consola, aceda à página Workload Identity Pools.

    Aceda aos Workload Identity Pools

  2. Encontre o conjunto de identidades de carga de trabalho que quer ver e, de seguida, clique no respetivo ícone Editar. A Trusted Cloud consola mostra detalhes sobre o Workload Identity Pool.

gcloud

Execute o comando gcloud iam workload-identity-pools describe.

REST

Ligue para projects.locations.workloadIdentityPools.get().

Atualize um grupo

Pode ativar ou desativar um Workload Identity Pool. Também pode alterar o nome a apresentar ou a descrição.

Para atualizar um Workload Identity Pool existente, faça o seguinte:

Consola

  1. Na Trusted Cloud consola, aceda à página Workload Identity Pools.

    Aceda aos Workload Identity Pools

  2. Encontre o pool de identidades de workload que quer editar e, de seguida, clique no respetivo ícone de edição.

    Para desativar ou ativar o conjunto do Workload Identity, clique no botão Estado e, de seguida, clique em Desativar ou Ativar.

    Para editar o nome a apresentar, clique em Editar junto ao nome a apresentar. Atualize o nome e, de seguida, clique em Guardar.

    Para editar a descrição, use a CLI gcloud ou a API REST.

gcloud

Execute o comando gcloud iam workload-identity-pools update.

REST

Ligue para projects.locations.workloadIdentityPools.patch().

Elimine um grupo

Quando elimina um Workload Identity Pool, também elimina os respetivos fornecedores do Workload Identity Pool. Como resultado, as identidades no conjunto perdem o acesso aos Trusted Cloud recursos.

Pode anular a eliminação de um conjunto até 30 dias após a eliminação. Após 30 dias, a eliminação é permanente. Até que um conjunto seja eliminado permanentemente, não pode reutilizar o respetivo nome quando criar um novo conjunto de identidades de carga de trabalho.

Para eliminar um Workload Identity Pool e os respetivos fornecedores de identidade, faça o seguinte:

Consola

  1. Na Trusted Cloud consola, aceda à página Workload Identity Pools.

    Aceda aos Workload Identity Pools

  2. Localize o pool de identidades de workload que quer eliminar e, de seguida, clique no respetivo ícone Editar.

  3. Clique em Eliminar conjunto e, de seguida, em Eliminar. O Workload Identity Pool e os respetivos fornecedores de identidade são eliminados.

gcloud

Execute o comando gcloud iam workload-identity-pools delete.

REST

Ligue para projects.locations.workloadIdentityPools.delete().

Anule a eliminação de um grupo

Pode recuperar um Workload Identity Pool eliminado até 30 dias após a eliminação.

Para anular a eliminação de um conjunto, faça o seguinte:

Consola

  1. Na Trusted Cloud consola, aceda à página Workload Identity Pools.

    Aceda aos Workload Identity Pools

  2. Clique no botão Mostrar fornecedores e conjuntos eliminados.

  3. Localize o conjunto do Workload Identity que quer anular a eliminação e, de seguida, clique no respetivo ícone Restaurar.

  4. Clique em Restaurar. O conjunto e os respetivos fornecedores são restaurados.

gcloud

Execute o comando gcloud iam workload-identity-pools undelete.

REST

Ligue para projects.locations.workloadIdentityPools.undelete().

Faça a gestão de fornecedores do Workload Identity Pool

Esta secção mostra como gerir fornecedores do Workload Identity Pool.

Crie um fornecedor

Para criar um fornecedor do Workload Identity Pool num Workload Identity Pool existente, faça o seguinte:

Consola

  1. Na Trusted Cloud consola, aceda à página Workload Identity Pools.

    Aceda aos Workload Identity Pools

  2. Encontre o Workload Identity Pool ao qual quer adicionar um fornecedor e, de seguida, clique no ícone Editar.

  3. Clique em Adicionar fornecedor.

  4. Selecione o tipo de fornecedor a criar:

    • AWS: um fornecedor de identidade da Amazon Web Services (AWS).
    • OpenID Connect (OIDC): um fornecedor de identidade compatível com OIDC. Isto inclui o Microsoft Azure.
  5. Introduza um nome para o fornecedor.

    A Trusted Cloud consola usa o nome para criar um ID do fornecedor. Para alterar o ID do fornecedor, clique em Editar. Não pode alterar o ID do fornecedor mais tarde.

  6. Preencha os campos restantes do seu fornecedor:

    • AWS: introduza o ID da sua conta da AWS.
    • OIDC: introduza o URL do emissor. Para o Azure, o URL do emissor usa o formato https://sts.windows.net/AZURE_TENANT_ID. Para outros fornecedores, consulte a documentação do fornecedor.

    Quando terminar, clique em Continuar.

  7. Para configurar o mapeamento de atributos, clique em Editar mapeamento. O mapeamento de atributos permite-lhe usar informações sobre identidades externas para conceder acesso a um subconjunto dessas identidades.

  8. Opcional: para fornecer uma condição de atributo que especifique as identidades que podem autenticar, clique em Adicionar condição e introduza uma expressão válida do Idioma de expressão comum (IEC). Para ver os detalhes, consulte as Condições dos atributos.

  9. Clique em Guardar. O fornecedor do Workload Identity Pool é criado.

gcloud

Execute o comando gcloud iam workload-identity-pools providers create-aws para criar um fornecedor da AWS.

Execute o comando gcloud iam workload-identity-pools providers create-oidc para criar um fornecedor OIDC. Isto inclui o Microsoft Azure.

REST

Ligue para projects.locations.workloadIdentityPools.providers.create().

Fornecedores de listas

Para listar os fornecedores do Workload Identity Pool num projeto, faça o seguinte:

Consola

  1. Na Trusted Cloud consola, aceda à página Workload Identity Pools.

    Aceda aos Workload Identity Pools

  2. Para ver os fornecedores de um Workload Identity Pool, clique no ícone Expandir nó para o pool.

gcloud

Execute o comando gcloud iam workload-identity-pools providers list.

REST

Ligue para projects.locations.workloadIdentityPools.providers.list().

Obtenha um fornecedor

Para obter detalhes de um fornecedor do Workload Identity Pool específico, faça o seguinte:

Consola

  1. Na Trusted Cloud consola, aceda à página Workload Identity Pools.

    Aceda aos Workload Identity Pools

  2. Encontre o Workload Identity Pool que contém o fornecedor e, de seguida, clique no ícone Expand node para o pool.

  3. Encontre o fornecedor do Workload Identity Pool que quer ver e, de seguida, clique no ícone Editar. ATrusted Cloud consola mostra informações detalhadas sobre o fornecedor.

gcloud

Execute o comando gcloud iam workload-identity-pools providers describe.

REST

Ligue para projects.locations.workloadIdentityPools.providers.get().

Atualize um fornecedor

Pode ativar ou desativar um fornecedor do Workload Identity Pool. Também pode atualizar as informações da conta, o mapeamento de atributos, o nome a apresentar e a descrição.

Para atualizar um fornecedor do Workload Identity Pool existente, faça o seguinte:

Consola

  1. Na Trusted Cloud consola, aceda à página Workload Identity Pools.

    Aceda aos Workload Identity Pools

  2. Encontre o Workload Identity Pool que contém o fornecedor e, de seguida, clique no ícone Expand node para o pool.

  3. Encontre o fornecedor do Workload Identity Pool que quer editar e, de seguida, clique no ícone Editar.

  4. Edite as informações do fornecedor e, de seguida, clique em Guardar.

gcloud

Execute o comando gcloud iam workload-identity-pools providers update-aws para atualizar um fornecedor da AWS.

Execute o comando gcloud iam workload-identity-pools providers update-oidc para atualizar um fornecedor de OIDC. Isto inclui o Microsoft Azure.

REST

Ligue para projects.locations.workloadIdentityPools.providers.patch().

Elimine um fornecedor

Quando elimina um fornecedor do Workload Identity Pool, as identidades do fornecedor perdem o acesso aos Trusted Cloud recursos.

Pode anular a eliminação de um fornecedor até 30 dias após a eliminação. Após 30 dias, a eliminação é permanente. Até um fornecedor ser eliminado permanentemente, não pode reutilizar o respetivo nome quando criar um novo fornecedor.

Para eliminar um fornecedor do Workload Identity Pool, faça o seguinte:

Consola

  1. Na Trusted Cloud consola, aceda à página Workload Identity Pools.

    Aceda aos Workload Identity Pools

  2. Encontre o Workload Identity Pool que contém o fornecedor e, de seguida, clique no ícone Editar.

  3. No painel Fornecedores, encontre o fornecedor que quer eliminar e, de seguida, clique no respetivo ícone Eliminar.

  4. Clique em Eliminar para eliminar o fornecedor.

gcloud

Execute o comando gcloud iam workload-identity-pools providers delete.

REST

Ligue para projects.locations.workloadIdentityPools.providers.delete().

Anule a eliminação de um fornecedor

Pode recuperar um fornecedor do Workload Identity Pool eliminado até 30 dias após a eliminação. Para anular a eliminação de um fornecedor:

Consola

  1. Na Trusted Cloud consola, aceda à página Workload Identity Pools.

    Aceda aos Workload Identity Pools

  2. Clique no botão Mostrar fornecedores e conjuntos eliminados.

  3. Encontre o Workload Identity Pool que contém o fornecedor e, de seguida, clique no ícone Expand node para o pool.

  4. Localize o fornecedor que quer anular a eliminação e, de seguida, clique no respetivo ícone Restaurar.

  5. Clique em Restaurar. O fornecedor é restaurado.

gcloud

Execute o comando gcloud iam workload-identity-pools providers undelete.

REST

Ligue para projects.locations.workloadIdentityPools.providers.undelete().

Faça a gestão das restrições para a Workload Identity Federation

Pode usar restrições de políticas organizacionais para restringir a forma como os recursos na sua Trusted Cloud by S3NS organização podem ser usados.

Esta secção descreve as restrições recomendadas quando usa a Federação de identidades de cargas de trabalho.

Restrinja a configuração do Fornecedor de identidade

Enquanto administrador da organização, pode decidir com que fornecedores de identidade a sua organização tem autorização para federar.

Para gerir os fornecedores de identidade permitidos, ative a restrição de lista constraints/iam.workloadIdentityPoolProviders na política da organização para a sua organização. Esta restrição especifica os URIs do emissor dos fornecedores permitidos. Pode usar a Trusted Cloud consola ou a Google Cloud CLI para ativar esta restrição.

Para permitir apenas a federação da AWS, crie uma única restrição com o URI https://sts.amazonaws.com. O exemplo seguinte mostra como criar esta restrição através da CLI gcloud:

gcloud resource-manager org-policies allow constraints/iam.workloadIdentityPoolProviders \
     https://sts.amazonaws.com --organization=ORGANIZATION_NUMBER

Também pode especificar os IDs das contas da AWS que têm acesso aos seus Trusted Cloud by S3NS recursos. Para especificar os IDs das contas, use a restrição de lista constraints/iam.workloadIdentityPoolAwsAccounts:

gcloud resource-manager org-policies allow constraints/iam.workloadIdentityPoolAwsAccounts \
    ACCOUNT_ID --organization=ORGANIZATION_NUMBER

Para permitir apenas a federação de um fornecedor OIDC, crie uma única restrição com o issuer_uri do fornecedor permitido. Por exemplo, o seguinte permite apenas a federação de um inquilino específico do Azure:

gcloud resource-manager org-policies allow constraints/iam.workloadIdentityPoolProviders \
     https://sts.windows.net/AZURE_TENANT_ID --organization=ORGANIZATION_NUMBER

A federação a partir de um fornecedor de identidade SAML é um caso especial porque as chaves públicas usadas para validar a afirmação são fornecidas no momento da configuração, em vez de serem obtidas diretamente do fornecedor de identidade. Por conseguinte, é concebível que um utilizador malicioso possa tentar carregar um documento de metadados SAML com o ID de entidade do fornecedor de identidade da sua organização, mas uma chave pública para a qual tenha acesso à chave privada. Restringir a federação pelo ID da entidade neste cenário dá apenas uma ilusão de segurança. Por este motivo, recomendamos vivamente que permita apenas a criação de um Workload Identity Pool que permita a federação SAML num projeto que a sua organização gere centralmente. Trusted Cloud Em seguida, pode conceder identidades externas nesse Workload Identity Pool acesso a recursos em toda a sua organização.

Para permitir a federação de fornecedores de identidade SAML, crie uma restrição que permita a palavra-chave especial KEY_UPLOAD.

gcloud resource-manager org-policies allow constraints/iam.workloadIdentityPoolProviders \
     KEY_UPLOAD --organization=ORGANIZATION_NUMBER

Pode repetir estes comandos para permitir a federação de fornecedores adicionais.

Para bloquear a federação de todos os fornecedores:

  1. Crie um ficheiro YAML com o seguinte:

    constraint: constraints/iam.workloadIdentityPoolProviders
    listPolicy:
      allValues: DENY
  2. Transmita o ficheiro para o comando gcloud resource-manager org-policies set-policy:

    gcloud resource-manager org-policies set-policy FILE_NAME.yaml \
        --organization=ORGANIZATION_NUMBER

Restrinja a criação de chaves de contas de serviço

A Workload Identity Federation permite-lhe aceder a Trusted Cloud recursos de fora de Trusted Cloud sem usar uma chave de conta de serviço. Se nunca usar chaves de conta de serviço para autenticar, pode ajudar a reduzir o risco desativando a criação de chaves.

Para desativar a criação de chaves de contas de serviço, aplique a restrição booleana iam.disableServiceAccountKeyCreation na política da organização para a sua organização. Também pode aplicar a restrição booleana iam.disableServiceAccountKeyUpload, que desativa o carregamento de chaves públicas para contas de serviço.

Pode usar a Trusted Cloud consola ou a CLI gcloud para ativar estas restrições. Por exemplo, os seguintes comandos da CLI gcloud ativam ambas as restrições:

gcloud resource-manager org-policies enable-enforce \
    constraints/iam.disableServiceAccountKeyCreation \
    --organization=ORGANIZATION_NUMBER
gcloud resource-manager org-policies enable-enforce \
    constraints/iam.disableServiceAccountKeyUpload \
    --organization=ORGANIZATION_NUMBER

Monitorize a Workload Identity Federation

Pode usar as métricas do Cloud Monitoring para monitorizar eventos de autenticação para os seus Workload Identity Pools e fornecedores. Para ver uma lista das métricas disponíveis, consulte Métricas da IAM.

O que se segue?

Saiba mais sobre a Federação de identidades de cargas de trabalho.