Administra grupos y proveedores de Workload Identity

En esta página, se explica cómo administrar grupos de Workload Identity y sus proveedores de identidad.

Puedes administrar grupos y proveedores mediante la herramienta de línea de comandos de gcloud o la API de REST. El uso de Cloud Console o las bibliotecas cliente de Google Cloud no es compatible con la versión Beta.

Antes de comenzar

Crea un grupo de Workload Identity y configura un proveedor de identidad. Consulta una de las siguientes páginas para obtener más información:

Administra grupos de Workload Identity

Crea un grupo

Para crear un grupo de Workload Identity, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools create.

REST

Llama a projects.locations.workloadIdentityPools.create().

Enumera grupos

Para enumerar todos los grupos de Workload Identity en un proyecto, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools list.

REST

Llama a projects.locations.workloadIdentityPools.list().

Obtén un grupo

A fin de obtener detalles sobre un grupo específico de Workload Identity, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools describe.

REST

Llama a projects.locations.workloadIdentityPools.get().

Actualiza un grupo

Para actualizar un grupo de Workload Identity existente, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools update.

REST

Llama a projects.locations.workloadIdentityPools.patch().

Borra un grupo

Para borrar un grupo de Workload Identity, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools delete.

REST

Llama a projects.locations.workloadIdentityPools.delete().

Puedes recuperar un grupo hasta 30 días después de borrarlo. Después de 30 días, la eliminación es permanente. Hasta que se borre un grupo de forma permanente, no podrás volver a usar su nombre cuando crees un grupo de Workload Identity nuevo.

Recupera un grupo

Puedes recuperar un grupo de Workload Identity borrado hasta 30 días después de la eliminación. Para recuperar un grupo, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools undelete.

REST

Llama a projects.locations.workloadIdentityPools.undelete().

Administra proveedores de Workload Identity

Crea un proveedor

Para crear un proveedor de Workload Identity, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools providers create-aws para crear un proveedor de AWS.

Ejecuta el comando gcloud beta iam workload-identity-pools providers create-oidc para crear un proveedor de OIDC. Esto incluye Microsoft Azure.

REST

Llama a projects.locations.workloadIdentityPools.providers.create().

Enumera proveedores

Para enumerar todos los proveedores de Workload Identity en un proyecto, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools providers list.

REST

Llama a projects.locations.workloadIdentityPools.providers.list().

Obtén un proveedor

Para obtener detalles sobre un proveedor específico de Workload Identity, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools providers describe.

REST

Llama a projects.locations.workloadIdentityPools.providers.get().

Actualiza un proveedor

Para actualizar un proveedor de Workload Identity existente, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools providers update-aws para actualizar un proveedor de AWS.

Ejecuta el comando gcloud beta iam workload-identity-pools providers update-oidc para actualizar un proveedor de OIDC. Esto incluye Microsoft Azure.

REST

Llama a projects.locations.workloadIdentityPools.providers.patch().

Borra un proveedor

Para borrar un proveedor de Workload Identity, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools providers delete.

REST

Llama a projects.locations.workloadIdentityPools.providers.delete().

Puedes recuperar un proveedor hasta 30 días después de la eliminación. Después de 30 días, la eliminación es permanente. Hasta que se borre un proveedor de forma permanente, no podrás volver a usar su nombre cuando crees un proveedor nuevo.

Recupera un grupo

Puedes recuperar un proveedor de identidad de carga de trabajo borrado hasta 30 días después de la eliminación. Para recuperar un proveedor, haz lo siguiente:

gcloud

Ejecuta el comando gcloud beta iam workload-identity-pools providers undelete.

REST

Llama a projects.locations.workloadIdentityPools.providers.undelete().

Restringe la configuración del proveedor de identidad mediante la política de la organización

De forma predeterminada, cualquier usuario con la función de administrador de grupo de Workload Identity (roles/iam.workloadIdentityPoolAdmin) puede configurar la federación con cualquier proveedor de identidad compatible. Sin embargo, como administrador de la organización, es posible que solo quieras permitir el acceso a los recursos a proveedores específicos y confiables.

Puedes restringir qué proveedores de identidad tienen acceso mediante políticas de la organización. En Cloud Console o con la herramienta de línea de comandos de gcloud, habilita la restricción constraints/iam.workloadIdentityPoolProviders y especifica los URI de emisor de los proveedores permitidos.

Para permitir solo la federación desde AWS, crea una sola restricción con el URI https://sts.amazonaws.com. En el siguiente ejemplo, se muestra cómo crear esta restricción mediante la herramienta de línea de comandos de gcloud:

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

Para permitir solo la federación de un proveedor de OIDC, crea una sola restricción con el issuer_uri del proveedor permitido. Por ejemplo, lo siguiente solo permite la federación de un usuario específico de Azure:

gcloud beta resource-manager org-policies allow constraints/iam.workloadIdentityPoolProviders \
     https://sts.windows.net/azure-tenant-id --organization=organization-number

Puedes repetir estos comandos para permitir la federación de proveedores adicionales.

Para bloquear la federación de todos los proveedores, sigue estos pasos:

  1. Crea un archivo YAML que contenga lo siguiente:

    constraint: constraints/iam.workloadIdentityPoolProviders
    listPolicy:
      allValues: DENY
    
  2. Pasa el archivo al comando gcloud beta resource-manager org-policies set-policy:

    gcloud beta resource-manager org-policies set-policy file-name.yaml \
        --organization=organization-number
    

Para permitir la federación desde cualquier proveedor, borra todas las restricciones de constraints/iam.workloadIdentityPoolProviders de tu organización.

Próximos pasos