En esta página se explica cómo gestionar los grupos de identidades de carga de trabajo y sus proveedores de identidades.
Puedes gestionar los grupos y los proveedores con la consola Trusted Cloud , Google Cloud CLI o la API REST.
Antes de empezar
Crea un grupo de identidades de carga de trabajo. Consulta una de las siguientes páginas para saber cómo hacerlo:
- Acceder a recursos de AWS
- Acceder a recursos desde Microsoft Azure
- Acceder a recursos desde un proveedor de identidades OIDC
- Acceder a recursos desde un proveedor de identidades SAML 2.0
Roles obligatorios
Para obtener los permisos que necesitas para gestionar grupos y proveedores de Workload Identity, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en el proyecto:
-
Para ver grupos y proveedores, haz lo siguiente:
Visor de grupos de Workload Identity de IAM (
roles/iam.workloadIdentityPoolViewer
) -
Para ver, crear, actualizar y eliminar grupos y proveedores:
Administrador de grupos de Workload Identity de IAM (
roles/iam.workloadIdentityPoolAdmin
)
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para gestionar grupos y proveedores de Workload Identity. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para gestionar grupos y proveedores de Workload Identity, se necesitan los siguientes permisos:
-
Para ver los grupos y proveedores de identidades de carga de trabajo, haz lo siguiente:
-
iam.googleapis.com/workloadIdentityPoolProviders.get
-
iam.googleapis.com/workloadIdentityPoolProviders.list
-
iam.googleapis.com/workloadIdentityPools.get
-
iam.googleapis.com/workloadIdentityPools.list
-
-
-
Para crear, actualizar y eliminar grupos y proveedores, sigue estos pasos:
-
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
-
-
También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.
Gestionar grupos de identidades de carga de trabajo
En esta sección se explica cómo gestionar grupos de identidades de carga de trabajo.
Crear grupos
Para crear grupos de identidades de carga de trabajo en un proyecto, haz lo siguiente:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
gcloud
Ejecuta el comando gcloud iam workload-identity-pools create
.
REST
Mostrar grupos
Para enumerar todos los grupos de identidades de carga de trabajo de un proyecto, haz lo siguiente:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
gcloud
Ejecuta el comando gcloud iam workload-identity-pools list
.
REST
Obtener un grupo
Para obtener los detalles de un grupo de identidades de carga de trabajo específico, haz lo siguiente:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
Busca el grupo de identidades de carga de trabajo que quieras ver y haz clic en su icono
Editar. La consolaTrusted Cloud muestra detalles sobre el grupo de identidades de carga de trabajo.
gcloud
Ejecuta el comando gcloud iam workload-identity-pools describe
.
REST
Actualizar un grupo
Puedes habilitar o inhabilitar un grupo de identidades de carga de trabajo. También puedes cambiar su nombre visible o su descripción.
Para actualizar un grupo de identidades de carga de trabajo, sigue estos pasos:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
Busca el grupo de identidades de carga de trabajo que quieras editar y haz clic en el icono
Editar.Para inhabilitar o habilitar el grupo de identidades de carga de trabajo, haz clic en el interruptor Estado y, a continuación, en Inhabilitar o Habilitar.
Para editar el nombre visible, haz clic en
Editar junto al nombre visible. Actualiza el nombre y haz clic en Guardar.Para editar la descripción, usa la CLI de gcloud o la API REST.
gcloud
Ejecuta el comando gcloud iam workload-identity-pools update
.
REST
Eliminar un grupo
Cuando eliminas un grupo de identidades de carga de trabajo, también se eliminan sus proveedores. Como resultado, las identidades del grupo pierden el acceso a los recursos deTrusted Cloud .
Puedes restaurar un grupo hasta 30 días después de eliminarlo. Transcurridos 30 días, la eliminación es permanente. Hasta que no se elimine definitivamente un grupo, no podrá reutilizar su nombre al crear un nuevo grupo de identidades de carga de trabajo.
Para eliminar un grupo de identidades de carga de trabajo y sus proveedores de identidades, sigue estos pasos:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
Busca el grupo de identidades de carga de trabajo que quieras eliminar y haz clic en el icono
Editar.Haz clic en
Eliminar grupo y, a continuación, en Eliminar. Se eliminan el grupo de identidades de carga de trabajo y sus proveedores de identidades.
gcloud
Ejecuta el comando gcloud iam workload-identity-pools delete
.
REST
Recuperar un grupo
Puedes recuperar un grupo de identidades de carga de trabajo eliminado hasta 30 días después de la eliminación.
Para restaurar un grupo, haz lo siguiente:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
Haz clic en el interruptor Mostrar grupos y proveedores eliminados.
Busca el grupo de identidades de carga de trabajo que quieras recuperar y haz clic en su icono
Restaurar.Haz clic en Restaurar. Se restaurarán el grupo y sus proveedores.
gcloud
Ejecuta el comando gcloud iam workload-identity-pools undelete
.
REST
Llama al projects.locations.workloadIdentityPools.undelete()
.
Gestionar proveedores de grupos de identidades de carga de trabajo
En esta sección se explica cómo gestionar proveedores de grupos de identidades de carga de trabajo.
Crear un proveedor
Para crear un proveedor de grupos de identidades de carga de trabajo en un grupo de identidades de carga de trabajo, haz lo siguiente:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
Busca el grupo de identidades de carga de trabajo al que quieras añadir un proveedor y haz clic en el icono
Editar.Haz clic en
Añadir proveedor.Seleccione el tipo de proveedor que quiere crear:
- AWS proveedor de identidades de Amazon Web Services (AWS).
- OpenID Connect (OIDC): un proveedor de identidades compatible con OIDC. Esto incluye Microsoft Azure.
Introduce un nombre para el proveedor.
La Trusted Cloud consola usa el nombre para crear un ID de proveedor. Para cambiar el ID de proveedor, haz clic en Editar. No podrás cambiar el ID de proveedor más adelante.
Rellena los campos que faltan de tu proveedor:
- AWS introduce el ID de tu cuenta de AWS.
- OIDC introduce la URL del emisor. En Azure, la URL del emisor tiene el formato
https://sts.windows.net/AZURE_TENANT_ID
. En el caso de otros proveedores, consulta su documentación.
Cuando hayas terminado, haz clic en Continuar.
Para configurar la asignación de atributos, haz clic en Editar asignación. La asignación de atributos te permite usar información sobre identidades externas para conceder acceso a un subconjunto de esas identidades.
AWS este paso es opcional. Puedes usar la asignación predeterminada.
Para obtener más información, consulta Configuración del proveedor de identidades para AWS.
OIDC te recomendamos que asignes
google.subject
aassertion.sub
. Las demás asignaciones son opcionales.Para obtener más información, consulta Ajustes del proveedor de identidades de Azure o Ajustes del proveedor de identidades de OIDC.
Opcional: Para proporcionar una condición de atributo que especifique las identidades que pueden autenticarse, haga clic en Añadir condición e introduzca una expresión válida del lenguaje de expresión común (CEL). Para obtener más información, consulta Condiciones de los atributos.
Haz clic en Guardar. Se crea el proveedor de grupos de identidades de carga de trabajo.
gcloud
Ejecuta el comando
gcloud iam workload-identity-pools providers create-aws
para crear un proveedor de AWS.
Ejecuta el comando
gcloud iam workload-identity-pools providers create-oidc
para crear un proveedor de OIDC. Esto incluye Microsoft Azure.
REST
Llama al projects.locations.workloadIdentityPools.providers.create()
.
Mostrar proveedores
Para enumerar los proveedores de grupos de identidades de carga de trabajo de un proyecto, haz lo siguiente:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
Para ver los proveedores de un grupo de identidades de carga de trabajo, haz clic en el icono
Expandir nodo del grupo.
gcloud
Ejecuta el comando
gcloud iam workload-identity-pools providers list
.
REST
Llama al projects.locations.workloadIdentityPools.providers.list()
.
Obtener un proveedor
Para obtener los detalles de un proveedor de grupos de identidades de carga de trabajo específico, haz lo siguiente:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
Busca el grupo de identidades de carga de trabajo que contiene el proveedor y, a continuación, haz clic en el icono
Expandir nodo del grupo.Busque el proveedor del grupo de identidades de carga de trabajo que quiera ver y haga clic en el icono
Editar. La consolaTrusted Cloud muestra información detallada sobre el proveedor.
gcloud
Ejecuta el comando
gcloud iam workload-identity-pools providers describe
.
REST
Llama al projects.locations.workloadIdentityPools.providers.get()
.
Actualizar un proveedor
Puede habilitar o inhabilitar un proveedor de grupos de identidades de carga de trabajo. También puedes actualizar la información de la cuenta, la asignación de atributos, el nombre visible y la descripción.
Para actualizar un proveedor de grupos de identidades de carga de trabajo, sigue estos pasos:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
Busca el grupo de identidades de carga de trabajo que contiene el proveedor y, a continuación, haz clic en el icono
Expandir nodo del grupo.Busca el proveedor del grupo de identidades de carga de trabajo que quieras editar y haz clic en el icono
Editar.Edita la información del proveedor y haz clic en Guardar.
gcloud
Ejecuta el comando
gcloud iam workload-identity-pools providers update-aws
para actualizar un proveedor de AWS.
Ejecuta el comando
gcloud iam workload-identity-pools providers update-oidc
para actualizar un proveedor de OIDC. Esto incluye Microsoft Azure.
REST
Llama al projects.locations.workloadIdentityPools.providers.patch()
.
Eliminar un proveedor
Cuando eliminas un proveedor de grupos de identidades de carga de trabajo, las identidades del proveedor pierden el acceso a los recursos. Trusted Cloud
Puedes restaurar un proveedor hasta 30 días después de eliminarlo. Transcurridos 30 días, la eliminación es permanente. Hasta que un proveedor se elimine de forma permanente, no podrá reutilizar su nombre al crear otro.
Para eliminar un proveedor de grupos de identidades de carga de trabajo, sigue estos pasos:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
Busca el grupo de identidades de carga de trabajo que contiene el proveedor y haz clic en el icono
Editar.En el panel Proveedores, busca el proveedor que quieras eliminar y haz clic en el icono
Eliminar.Haz clic en Eliminar para eliminar el proveedor.
gcloud
Ejecuta el comando
gcloud iam workload-identity-pools providers delete
.
REST
Llama al projects.locations.workloadIdentityPools.providers.delete()
.
Restaurar un proveedor
Puedes recuperar un proveedor de grupos de identidades de carga de trabajo eliminado hasta 30 días después de la eliminación. Para restaurar un proveedor, sigue estos pasos:
Consola
En la Trusted Cloud consola, ve a la página Grupos de Workload Identity.
Haz clic en el interruptor Mostrar grupos y proveedores eliminados.
Busca el grupo de identidades de carga de trabajo que contiene el proveedor y, a continuación, haz clic en el icono
Expandir nodo del grupo.Busca el proveedor que quieras restaurar y haz clic en el icono
Restaurar.Haz clic en Restaurar. Se ha restaurado el proveedor.
gcloud
Ejecuta el comando
gcloud iam workload-identity-pools providers undelete
.
REST
Llama al projects.locations.workloadIdentityPools.providers.undelete()
.
Gestionar las restricciones de la federación de identidades de cargas de trabajo
Puedes usar restricciones de políticas de organización para restringir cómo se pueden usar los recursos de tu organización Trusted Cloud by S3NS .
En esta sección se describen las restricciones recomendadas al usar la federación de identidades de carga de trabajo.
Restringir la configuración del proveedor de identidades
Como administrador de una organización, puedes decidir con qué proveedores de identidades puede federarse tu organización.
Para gestionar los proveedores de identidades permitidos, habilita la restricción de lista constraints/iam.workloadIdentityPoolProviders
en la política de organización de tu organización. Esta restricción especifica los URIs del emisor de los proveedores permitidos. Puedes usar la Trusted Cloud consola o Google Cloud CLI para habilitar esta restricción.
Para permitir solo la federación de 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 con la CLI de gcloud:
gcloud resource-manager org-policies allow constraints/iam.workloadIdentityPoolProviders \ https://sts.amazonaws.com --organization=ORGANIZATION_NUMBER
También puede especificar qué IDs de cuenta de AWS tienen acceso a sus
Trusted Cloud by S3NS recursos. Para especificar los IDs de cuenta, usa la restricción de lista constraints/iam.workloadIdentityPoolAwsAccounts
:
gcloud resource-manager org-policies allow constraints/iam.workloadIdentityPoolAwsAccounts \ ACCOUNT_ID --organization=ORGANIZATION_NUMBER
Para permitir la federación solo desde un proveedor de OIDC, cree una sola restricción con el issuer_uri
del proveedor permitido. Por ejemplo, lo siguiente solo permite la federación desde un inquilino de Azure específico:
gcloud resource-manager org-policies allow constraints/iam.workloadIdentityPoolProviders \ https://sts.windows.net/AZURE_TENANT_ID --organization=ORGANIZATION_NUMBER
La federación de un proveedor de identidades SAML es un caso especial, ya que las claves públicas que se usan para validar la aserción se proporcionan en el momento de la configuración en lugar de obtenerse directamente del proveedor de identidades. Por lo tanto, es posible que un usuario malintencionado intente subir un documento de metadatos SAML con el ID de entidad del proveedor de identidades de tu organización, pero con una clave pública a la que tenga acceso a la clave privada. Restringir la federación por el ID de entidad en este caso solo da una ilusión de seguridad. Por este motivo, te recomendamos que solo permitas la creación de un grupo de identidades de carga de trabajo que permita la federación SAML en un Trusted Cloud proyecto que tu organización gestione de forma centralizada. Después, puedes conceder acceso a los recursos de tu organización a las identidades externas de ese grupo de identidades de carga de trabajo.
Para permitir la federación de proveedores de identidades SAML, cree una restricción
que permita la palabra clave especial KEY_UPLOAD
.
gcloud resource-manager org-policies allow constraints/iam.workloadIdentityPoolProviders \ KEY_UPLOAD --organization=ORGANIZATION_NUMBER
Puedes repetir estos comandos para permitir la federación de otros proveedores.
Para bloquear la federación de todos los proveedores, sigue estos pasos:
Crea un archivo YAML con el siguiente contenido:
constraint: constraints/iam.workloadIdentityPoolProviders listPolicy: allValues: DENY
Envía el archivo al comando
gcloud resource-manager org-policies set-policy
:gcloud resource-manager org-policies set-policy FILE_NAME.yaml \ --organization=ORGANIZATION_NUMBER
Restringir la creación de claves de cuentas de servicio
Workload Identity Federation te permite acceder a Trusted Cloud recursos desde fuera Trusted Cloud sin usar una clave de cuenta de servicio. Si nunca usas claves de cuentas de servicio para autenticarte, puedes reducir el riesgo inhabilitando la creación de claves.
Para inhabilitar la creación de claves de cuentas de servicio, aplica la restricción booleana iam.disableServiceAccountKeyCreation
en la política de organización de tu organización. También puedes aplicar la restricción booleana iam.disableServiceAccountKeyUpload
, que inhabilita la subida de claves públicas a las cuentas de servicio.
Puedes usar la Trusted Cloud consola o gcloud CLI para habilitar estas restricciones. Por ejemplo, los siguientes comandos de la CLI de gcloud habilitan ambas restricciones:
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
Monitorizar la federación de identidades de cargas de trabajo
Puedes usar las métricas de Cloud Monitoring para monitorizar los eventos de autenticación de tus grupos y proveedores de identidades de carga de trabajo. Para ver una lista de las métricas disponibles, consulta Métricas de gestión de identidades y accesos.
Siguientes pasos
Más información sobre la federación de identidades de cargas de trabajo