Configura la federación de identidades de personal con Microsoft Entra ID

Puedes configurar la federación de identidades de personal con el proveedor de identidad (IdP) de Microsoft Entra ID y asignar hasta 400 grupos de Microsoft Entra ID a Google Cloud con Microsoft Graph. Luego, puedes otorgar roles de IAM a esos grupos, lo que permite que los usuarios de Microsoft Entra ID que son miembros de los grupos accedan a Google Cloud. Luego, los usuarios pueden acceder a los Google Cloud productos a los que se les otorgó acceso a IAM y que también admiten la federación de identidades de personal.

Para mapear menos de 150 grupos de Microsoft Entra ID a Google Cloud, consulta Configura la federación de identidades de personal con Microsoft Entra ID y permite el acceso de usuarios.

Conceptos clave

En esta sección, se describen los conceptos que se usan para configurar la federación de identidades de personal, más adelante en este documento.

Atributos adicionales

Para asignar hasta 400 grupos, debes usar atributos adicionales especificando marcas extra-attributes cuando crees el proveedor del grupo de identidades de personal. Puedes usar atributos adicionales con los siguientes protocolos:

  • OIDC con flujo implícito
  • OIDC con flujo de código
  • Protocolo SAML 2.0

La cantidad de direcciones de correo electrónico de grupos que una aplicación de Microsoft Entra ID puede emitir en un token se limita a 150 para SAML y a 200 para JWT. Para obtener más información sobre este límite, consulta Configura las declaraciones de grupos para las aplicaciones con Microsoft Entra ID. Para recuperar más grupos, la federación de identidades de personal usa el flujo de credenciales de cliente de OAuth 2.0 de Microsoft Identity para obtener credenciales que permitan que la federación de identidades de personal consulte la API de Microsoft Graph y recupere los grupos de un usuario.

Para usar atributos adicionales, en un nivel general, debes hacer lo siguiente:

  • Crea una aplicación nueva de Microsoft Entra ID o actualiza la existente para obtener las membresías de los grupos de los usuarios desde la API de Microsoft Graph. Para obtener más información sobre cómo Microsoft Graph recupera una gran cantidad de grupos de Microsoft Entra ID, consulta Exceso de grupos.

  • Cuando creas el proveedor de grupo de identidades de personal, usas marcas de extra-attributes para configurar la federación de identidades de personal de modo que recupere las direcciones de correo electrónico de grupo o los nombres visibles de los grupos de usuarios desde la API de Microsoft Graph.

La federación de identidades de personal puede recuperar un máximo de 999 grupos de la API de Microsoft Graph. Si la API de Microsoft Graph devuelve más de 999 grupos, se produce un error en el acceso.

Para reducir la cantidad de grupos que devuelve la API de Microsoft Graph, puedes refinar la consulta de la federación de identidades de personal con la marca --extra-attributes-filter cuando crees el proveedor de grupos de identidades de personal.

Después de que la federación de identidades del personal recupera los grupos de la API de Microsoft Graph, genera el token de acceso. La federación de identidades del personal puede agregar un máximo de 400 grupos al token de acceso, por lo que, para filtrar aún más la cantidad de grupos a 400 o menos, puedes especificar un mapeo de atributos que contenga expresiones del lenguaje de expresiones común (CEL), cuando crees el proveedor de grupos de identidades del personal.

Antes de comenzar

  1. Asegúrate de tener configurada una organización de Google Cloud .
  2. Instala Google Cloud CLI. Después de la instalación, inicializa Google Cloud CLI con el siguiente comando:

    gcloud init

    Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.

  3. En Microsoft Entra ID, asegúrate de que los tokens de ID estén habilitados para el flujo implícito. Para obtener más información, consulta Habilita el otorgamiento implícito del token de ID.
  4. Para el acceso, tu IdP debe proporcionar información de autenticación firmada: los IdP de OIDC deben proporcionar un JWT y las respuestas del IdP de SAML deben estar firmadas.
  5. Para recibir información importante sobre los cambios en tu organización o productos deGoogle Cloud , debes proporcionar Essential Contacts. Para obtener más información, consulta la descripción general de la federación de identidades de personal.
  6. Todos los grupos que desees asignar deben estar marcados como grupos de seguridad en Microsoft Entra ID.

Costos

La federación de identidades de personal está disponible como una función sin costo. Sin embargo, el registro de auditoría detallado de la federación de identidades de personal usa Cloud Logging. Para obtener información sobre los precios de Logging, consulta los precios de Google Cloud Observability.

Roles obligatorios

Para obtener los permisos que necesitas para configurar la federación de identidades de personal, pídele a tu administrador que te otorgue el rol de IAM Administrador de grupos de trabajadores de IAM (roles/iam.workforcePoolAdmin) en la organización. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

Si configuras permisos en un entorno de desarrollo o de prueba, pero no en un entorno de producción, puedes otorgar el rol básico de propietario de IAM (roles/owner), que también incluye permisos para la federación de identidades de personal.

Crea una aplicación de Microsoft Entra ID

En esta sección, se muestra cómo crear una aplicación de Microsoft Entra ID con el portal de administración de Microsoft Entra. Como alternativa, puedes actualizar tu aplicación existente. Para obtener más detalles, consulta Establece aplicaciones en el ecosistema de Microsoft Entra ID.

Los grupos de identidades de personal admiten la federación mediante el uso de protocolos OIDC y SAML.

OIDC

Para crear un registro de aplicación de Microsoft Entra ID que use el protocolo OIDC, haz lo siguiente:

  1. Accede al centro de administración de Microsoft Entra.

  2. Ve a la página Overview del registro de tu aplicación de Microsoft Entra ID.

  3. Navega a Entra ID > Registros de aplicaciones.

  4. Para comenzar a configurar el registro de la aplicación, haz lo siguiente:

    1. Haz clic en New registration.

    2. Ingresa un nombre para tu aplicación.

    3. En Tipos de cuentas compatibles, selecciona una opción.

    4. En la sección URI de redireccionamiento, en la lista desplegable Seleccionar una plataforma, selecciona Web.

    5. En el campo de texto, ingresa una URL de redireccionamiento. Se redirecciona a tus usuarios a esta URL después de que acceden de forma correcta. Si configuras el acceso a la consola (federada), usa el siguiente formato de URL:

      https://auth.cloud.google/signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
      

      Reemplaza lo siguiente:

      • WORKFORCE_POOL_ID: Es un ID del grupo de identidades de personal que usarás cuando crees el grupo de identidades de personal más adelante en este documento; por ejemplo: entra-id-oidc-pool

      • WORKFORCE_PROVIDER_ID: Un ID de proveedor de grupo de identidades de personal que usarás cuando crees el proveedor de grupo de identidades de personal más adelante en este documento; por ejemplo, entra-id-oidc-pool-provider

        Para obtener información sobre el formato del ID, consulta la sección Parámetros de consulta en la documentación de la API.

    6. Para crear el registro de la aplicación, haz clic en Registrar.

    7. Para usar la asignación de atributos de ejemplo que se proporciona más adelante en este documento, debes crear un atributo department personalizado.

SAML

Para crear un registro de aplicación de Microsoft Entra ID que use el protocolo SAML, haz lo siguiente:

  1. Accede al portal de administración de Microsoft Entra.

  2. En el menú de navegación de la izquierda, ve a Entra ID > Enterprise Apps.

  3. Para comenzar a configurar la aplicación empresarial, haz lo siguiente:

    1. Haz clic en Nueva aplicación > Crear tu propia aplicación.

    2. En el panel Crea tu propia aplicación que aparece, ingresa un nombre para tu aplicación.

    3. Haz clic en Crear.

    4. Ve a Inicio de sesión único > SAML.

    5. Actualiza la Configuración básica del SAML de la siguiente manera:

      1. En el campo Identificador (ID de entidad), ingresa el siguiente valor:

        https://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
        

        Reemplaza lo siguiente:

        • WORKFORCE_POOL_ID: Un ID de grupo de identidades de personal que usarás cuando crees el grupo de identidades de personal más adelante en este documento; por ejemplo: entra-id-saml-pool
        • WORKFORCE_PROVIDER_ID: Un ID de proveedor de grupo de identidades de personal que usarás cuando crees el proveedor de grupo de identidades de personal más adelante en este documento; por ejemplo: entra-id-saml-pool-provider

          Para obtener información sobre el formato del ID, consulta la sección Parámetros de consulta en la documentación de la API.

      2. En el campo URL de respuesta (URL del servicio de confirmación de consumidores), ingresa una URL de redireccionamiento. Se redirecciona a tus usuarios a esta URL después de que acceden de forma correcta. Si configuras el acceso a la consola (federada), usa el siguiente formato de URL:

        https://auth.cloud.google/signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
        

        Reemplaza lo siguiente:

        • WORKFORCE_POOL_ID: El ID del grupo de identidades de personal
        • WORKFORCE_PROVIDER_ID: El ID del proveedor de identidad de personal
      3. Para habilitar el inicio de sesión iniciado por IdP, establece el campo Estado de retransmisión en el siguiente valor:

        https://console.cloud.google/
        
      4. Para guardar la configuración de la aplicación de SAML, haz clic en Guardar.

    6. Para usar la asignación de atributos de ejemplo que se proporciona más adelante en este documento, debes crear un atributo department personalizado.

Configura una gran cantidad de grupos con Microsoft Entra ID

En esta sección, se describe cómo asignar hasta 400 grupos de Microsoft Entra ID a la federación de identidades de personal con los protocolos OIDC y SAML.

Configura una gran cantidad de grupos con Microsoft Entra ID con el flujo implícito de OIDC

En esta sección, se describe cómo asignar hasta 400 grupos de Microsoft Entra ID a la federación de identidades de personal con el protocolo de OpenID Connect (OIDC) con flujo implícito.

Configura tu aplicación de Microsoft Entra ID

Puedes configurar una aplicación existente de Microsoft Entra ID o crear una nueva. Para configurar tu aplicación, haz lo siguiente:

  1. En el portal de Microsoft Entra ID, haz lo siguiente:
    • Para registrar una aplicación nueva, sigue las instrucciones en Registra una aplicación nueva.
    • Para actualizar una aplicación existente, haz lo siguiente:
      • Ve a la página Overview del registro de tu aplicación de Microsoft Entra ID.
      • Navega a Entra ID > Registros de aplicaciones.

      • Selecciona la aplicación que quieres actualizar.
  2. Crea un nuevo secreto del cliente en la aplicación siguiendo las instrucciones que se indican en Certificados y secretos. Asegúrate de registrar el valor del secreto del cliente, ya que solo se muestra una vez.

    Toma nota de los siguientes valores de la aplicación que creaste o actualizaste. Proporcionarás los valores cuando configures el proveedor de grupos de identidades de personal más adelante en este documento.

    • Client ID
    • Issuer URI
    • Client Secret
    • Tenant ID
  3. Para recuperar los grupos de Microsoft Entra ID, agrega el permiso de API para permitir que la federación de identidades de personal acceda a la información de los usuarios desde Microsoft Entra ID con la API de Microsoft Graph y otorga el consentimiento del administrador. En Microsoft Entra ID, haz lo siguiente:

    1. Ve a API permissions.
    2. Haz clic en Agregar un permiso.
    3. Selecciona Microsoft API.
    4. Selecciona Permisos de aplicación.
    5. En el campo de búsqueda, ingresa User.ReadBasic.All.
    6. Haz clic en Agregar permisos.

    Puedes recuperar los grupos de Microsoft Entra ID con un identificador (ID) de objeto de grupo, una dirección de correo electrónico de grupo para los grupos habilitados para correo electrónico o un nombre visible de grupo.

    Si eliges recuperar los grupos como direcciones de correo electrónico de grupo o nombres visibles, se requiere el siguiente paso.

  4. Para recuperar los grupos de Microsoft Entra ID como direcciones de correo electrónico de grupo o nombres visibles, haz lo siguiente. Si recuperas grupos como identificadores de objetos de grupo, omite este paso.
    1. Ve a API permissions.
    2. Haz clic en Agregar un permiso.
    3. Selecciona Microsoft API.
    4. Selecciona Permisos de aplicación.
    5. En el campo de búsqueda, ingresa GroupMember.Read.All.
    6. Haz clic en Agregar permisos.

    Ve a la página Descripción general de la aplicación de Microsoft Entra ID que creaste o actualizaste anteriormente. Haz clic en Extremos. El URI de la entidad emisora es el URI del documento de metadatos de OIDC, sin incluir la ruta de acceso /.well-known/openid-configuration.

    Por ejemplo, si el documento de metadatos de OIDC es https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.well-known/openid-configuration, el URI del emisor es https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.

Crea un grupo de Workforce Identity

gcloud

Para crear el grupo de identidades de personal, ejecuta el siguiente comando:

gcloud iam workforce-pools create WORKFORCE_POOL_ID \
    --organization=ORGANIZATION_ID \
    --display-name="DISPLAY_NAME" \
    --description="DESCRIPTION" \
    --session-duration=SESSION_DURATION \
    --location=global

Reemplaza lo siguiente:

  • WORKFORCE_POOL_ID: Es un ID que elijas para representar tu Google Cloud grupo de personal. El ID del grupo debe ser único a nivel global en todos los grupos de identidades de personal de Google Cloud. Para obtener información sobre el formato del ID, consulta la sección Parámetros de consulta en la documentación de la API.
  • ORGANIZATION_ID: Es el ID numérico de tu Google Cloud organización para el grupo de identidades de personal. Los grupos de identidades de personal están disponibles en todos los proyectos y carpetas de la organización.
  • DISPLAY_NAME: Opcional Un nombre visible para tu grupo de identidad del personal.
  • DESCRIPTION: Opcional Una descripción del grupo de identidad del personal.
  • SESSION_DURATION: Opcional Duración de la sesión, expresada como un número al que se agrega s, por ejemplo, 3600s. La duración de la sesión determina el tiempo de acceso a los tokens de acceso de Google Cloud , las sesiones de acceso de la consola (federada) y las sesiones de acceso de la gcloud CLI de este grupo de personal son válidas. La duración predeterminada de la sesión es de una hora (3,600 s). El valor de duración de la sesión debe estar entre 15 minutos (900 s) y 12 horas (43,200 s).

Console

Para crear el grupo de identidades de personal, haz lo siguiente:

  1. En la consola de Google Cloud , ve a la página Grupos de identidades de personal:

    Ir a Grupos de identidades de personal

  2. Selecciona la organización para tu grupo de identidades del personal. Los grupos de identidades para cargas de trabajo están disponibles en todos los proyectos y carpetas de una organización.

  3. Haz clic en Crear grupo y haz lo siguiente:

    1. En el campo Nombre, ingresa el nombre visible del grupo. El ID del grupo se deriva automáticamente del nombre a medida que escribes y se muestra en el campo Nombre. Para actualizar el ID del grupo, haz clic en Editar junto a él.

    2. Opcional: En Descripción, ingresa una descripción del grupo.

    3. Para crear el grupo de identidades de personal, haz clic en Siguiente.

La duración de la sesión del grupo de identidades del personal se establece de forma predeterminada en una hora (3,600 s). La duración de la sesión determina el tiempo de validez de los tokens de acceso Google Cloud , la consola (federada) y las sesiones de acceso a gcloud CLI de este grupo de personal. Después de crear el grupo, puedes actualizarlo para establecer una duración de la sesión personalizada. La duración de la sesión debe ser de 15 minutos (900 s) a 12 horas (43,200 s).

Configura el proveedor de grupos de identidades de personal con flujo implícito de OIDC

gcloud

Para crear el proveedor de grupos de identidades de personal de OIDC, ejecuta el siguiente comando:

gcloud iam workforce-pools providers create-oidc PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --location=global \
    --display-name=DISPLAY_NAME \
    --issuer-uri=ISSUER_URI \
    --client-id=CLIENT_ID \
    --attribute-mapping=ATTRIBUTE_MAPPING \
    --web-sso-response-type=id-token \
    --web-sso-assertion-claims-behavior=only-id-token-claims \
    --extra-attributes-issuer-uri=EXTRA_ATTRIBUTES_ISSUER_URI \
    --extra-attributes-client-id=EXTRA_ATTRIBUTES_CLIENT_ID \
    --extra-attributes-client-secret-value=EXTRA_ATTRIBUTES_CLIENT_SECRET \
    --extra-attributes-type=EXTRA_ATTRIBUTES_TYPE  \
    --extra-attributes-filter=EXTRA_ATTRIBUTES_FILTER \
    --detailed-audit-logging
    

Reemplaza lo siguiente:

  • PROVIDER_ID: un ID de proveedor único. El prefijo gcp- está reservado y no se puede usar en un ID de grupo ni de proveedor.
  • WORKFORCE_POOL_ID: el ID del grupo de personal.
  • DISPLAY_NAME: Es el nombre visible del proveedor.
  • ISSUER_URI: Es el URI de la entidad emisora de la aplicación de Microsoft Entra ID que creaste anteriormente en este documento.
  • CLIENT_ID: Es el ID de cliente de tu aplicación de Microsoft Entra ID.
  • ATTRIBUTE_MAPPING: Es la asignación de atributos de Microsoft Entra ID a Google Cloud. Si usas marcas de --extra-attributes para consultar grupos desde Microsoft Entra ID, se ignorará cualquier asignación de google.groups que use reclamaciones estándar de SAML o OIDC. Por ejemplo, para asignar los atributos groups y subject de Microsoft Entra ID, usa la siguiente asignación de atributos:
    --attribute-mapping="google.groups=assertion.groups, google.subject=assertion.oid"

    Para obtener más información, consulta Asignación de atributos.

  • EXTRA_ATTRIBUTES_ISSUER_URI: Es el URI de la entidad emisora de tu aplicación de Microsoft Entra ID.
  • EXTRA_ATTRIBUTES_CLIENT_ID: Es el ID de cliente de tu aplicación de Microsoft Entra ID.
  • EXTRA_ATTRIBUTES_CLIENT_SECRET: Es el secreto del cliente adicional de tu aplicación de Microsoft Entra ID.
  • EXTRA_ATTRIBUTES_TYPE: Usa azure-ad-groups-mail para recuperar las direcciones de correo electrónico de los grupos. Usa azure-ad-groups-id para recuperar los IDs de los grupos. Usa azure-ad-groups-display-name para recuperar los nombres visibles de los grupos.
  • EXTRA_ATTRIBUTES_FILTER: Opcional Una expresión de filtro que se usa cuando se consulta la API de Microsoft Graph para grupos. Puedes usar este parámetro para asegurarte de que la cantidad de grupos recuperados del IdP permanezca por debajo del límite de 400 grupos.

    En el siguiente ejemplo, se recuperan los grupos que tienen el prefijo sales en su ID de correo electrónico:

    --extra-attributes-filter='"mail:sales"'

    La siguiente expresión recupera grupos con un nombre visible que contiene la cadena sales.

    --extra-attributes-filter='"displayName:sales"'
  • El registro de auditoría detallado de la federación de identidades de personal registra la información que se recibe de tu IdP en Logging. El registro de auditoría detallado puede ayudarte a solucionar problemas relacionados con la configuración de tu proveedor de grupos de identidades de personal. Para obtener información sobre cómo solucionar problemas de errores de asignación de atributos con el registro de auditoría detallado, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta Precios de Google Cloud Observability.

    Para inhabilitar el registro de auditoría detallado de un proveedor de grupos de identidades de personal, omite la marca --detailed-audit-logging cuando ejecutes gcloud iam workforce-pools providers create. Para inhabilitar el registro de auditoría detallado, también puedes actualizar el proveedor.

Console

  1. En la consola de Google Cloud , ve a la página Grupos de identidades de personal:
  2. Ir a Grupos de identidades de personal

  3. En la tabla Workforce Identity Pools, selecciona el grupo para el que deseas crear el proveedor.
  4. En la sección Proveedores, haz clic en Agregar proveedor.
  5. En la lista Selecciona un proveedor, elige tu proveedor de identidad (IdP).

    Si tu IdP no aparece en la lista, selecciona Generic Identity Provider.

  6. En Selecciona un protocolo de autenticación, elige OpenID Connect (OIDC).
  7. En la sección Crear un proveedor, haz lo siguiente:
    1. En Nombre, ingresa el nombre del proveedor.
    2. En Descripción, ingresa la descripción del proveedor.
    3. En Emisor (URL), ingresa el URI de la entidad emisora. El URI de la entidad emisora de OIDC debe tener un formato de URI válido y comenzar con https; por ejemplo, https://example.com/oidc.
    4. En ID de cliente, ingresa el ID de cliente de OIDC que está registrado con tu IdP de OIDC. El ID debe coincidir con la reclamación aud del JWT que emite tu IdP.
    5. Para crear un proveedor habilitado, asegúrate de que la opción Habilitar proveedor esté activada.

    6. Haz clic en Continuar.
  8. En la sección Comparte la información de tu proveedor con el IdP, copia la URL. En tu IdP, configura esta URL como el URI de redireccionamiento, que le informa a tu IdP dónde enviar el token de aserción después de acceder.
  9. Haz clic en Continuar.
  10. En la sección Configurar el acceso a la Web con OIDC, haz lo siguiente:
    1. En la lista Tipo de flujo, selecciona Token de ID.
    2. En la lista Comportamiento de los reclamos de aserciones, se selecciona Token de ID.
  11. Haz clic en Continuar.
  12. En Configurar proveedor, puedes configurar una asignación de atributos y una condición de atributo. Para crear una asignación de atributos, haz lo siguiente: Puedes proporcionar el nombre del campo del IdP o una expresión con formato CEL que devuelva una cadena.
    1. Obligatorio: En OIDC 1, ingresa el asunto del IdP, por ejemplo, assertion.sub.
    2. Opcional: Para agregar asignaciones de atributos adicionales, haz lo siguiente:
      1. Haz clic en Agregar asignación.
      2. En Google n, donde n es un número, ingresa una de las claves compatibles conGoogle Cloud.
      3. En el campo OIDC n correspondiente, ingresa el nombre del campo específico de la IdP que deseas asignar, en formato CEL.
    3. Para aumentar la cantidad de grupos, haz lo siguiente:
      1. Selecciona Usar atributos adicionales.
      2. En el campo URI de la entidad emisora de atributos adicionales, ingresa la URL de la entidad emisora.
      3. En el campo ID de cliente de atributos adicionales, ingresa el ID de cliente.
      4. En el campo Secreto del cliente de atributos adicionales, ingresa el secreto del cliente.
      5. En la lista Tipo de atributo adicional, selecciona un tipo de atributo para los atributos adicionales.
      6. En el campo Filtro de atributos adicionales, ingresa una expresión de filtro que se use cuando se consulte la API de Microsoft Graph para grupos.
    4. Para crear una condición de atributo, haz lo siguiente:
      1. Haz clic en Agregar condición:
      2. En el campo Condiciones del atributo, ingresa una condición en formato CEL, por ejemplo, assertion.role == 'gcp-users'. Esta condición de ejemplo garantiza que solo los usuarios con el rol gcp-users puedan acceder mediante este proveedor.
      3. Para activar el registro de auditoría detallado, en Registro detallado, haz clic en el botón de activación Habilitar el registro de auditoría del valor de atributos.

        El registro de auditoría detallado de la federación de identidades de personal registra la información que se recibe de tu IdP en Logging. El registro de auditoría detallado puede ayudarte a solucionar problemas relacionados con la configuración de tu proveedor de grupos de identidades de personal. Para obtener información sobre cómo solucionar problemas de errores de asignación de atributos con el registro de auditoría detallado, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta Precios de Google Cloud Observability.

        Para inhabilitar el registro de auditoría detallado de un proveedor de grupos de identidades de personal, omite la marca --detailed-audit-logging cuando ejecutes gcloud iam workforce-pools providers create. Para inhabilitar el registro de auditoría detallado, también puedes actualizar el proveedor.

  13. Para crear el proveedor, haz clic en Enviar.

Configura una gran cantidad de grupos en Microsoft Entra ID con el flujo de código de OIDC

En esta sección, se describe cómo asignar hasta 400 grupos de Microsoft Entra ID a la federación de identidades de personal con el protocolo OIDC con flujo de código.

Configura tu aplicación de Microsoft Entra ID

Puedes configurar una aplicación existente de Microsoft Entra ID o crear una nueva. Para configurar tu aplicación, haz lo siguiente:

  1. En el portal de Microsoft Entra ID, haz lo siguiente:
    • Para registrar una aplicación nueva, sigue las instrucciones en Registra una aplicación nueva.
    • Para actualizar una aplicación existente, haz lo siguiente:
      • Ve a la página Overview del registro de tu aplicación de Microsoft Entra ID.
      • Navega a Entra ID > Registros de aplicaciones.

      • Selecciona la aplicación que quieres actualizar.
  2. Crea un nuevo secreto del cliente en la aplicación siguiendo las instrucciones que se indican en Certificados y secretos. Asegúrate de registrar el valor del secreto del cliente, ya que solo se muestra una vez.

    Toma nota de los siguientes valores de la aplicación que creaste o actualizaste. Proporcionarás los valores cuando configures el proveedor de grupos de identidades de personal más adelante en este documento.

    • Client ID
    • Issuer URI
    • Client Secret
    • Tenant ID
  3. Para recuperar los grupos de Microsoft Entra ID, agrega el permiso de API para permitir que la federación de identidades de personal acceda a la información de los usuarios desde Microsoft Entra ID con la API de Microsoft Graph y otorga el consentimiento del administrador. En Microsoft Entra ID, haz lo siguiente:

    1. Ve a API permissions.
    2. Haz clic en Agregar un permiso.
    3. Selecciona Microsoft API.
    4. Selecciona Permisos delegados.
    5. En el campo de búsqueda, ingresa User.Read.
    6. Haz clic en Agregar permisos.

    Puedes recuperar los grupos de Microsoft Entra ID con un identificador (ID) de objeto de grupo, una dirección de correo electrónico de grupo para los grupos habilitados para correo electrónico o un nombre visible de grupo.

    Si eliges recuperar los grupos como direcciones de correo electrónico de grupo o nombres visibles, se requiere el siguiente paso.

  4. Para recuperar los grupos de Microsoft Entra ID como direcciones de correo electrónico de grupo o nombres visibles, haz lo siguiente. Si recuperas grupos como identificadores de objetos de grupo, omite este paso.
    1. Ve a API permissions.
    2. Haz clic en Agregar un permiso.
    3. Selecciona Microsoft API.
    4. Selecciona Permisos delegados.
    5. En el campo de búsqueda, ingresa GroupMember.Read.All.
    6. Haz clic en Agregar permisos.

    Ve a la página Descripción general de la aplicación de Microsoft Entra ID que creaste o actualizaste anteriormente. Haz clic en Extremos. El URI de la entidad emisora es el URI del documento de metadatos de OIDC, sin incluir la ruta de acceso /.well-known/openid-configuration.

    Por ejemplo, si el documento de metadatos de OIDC es https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.well-known/openid-configuration, el URI del emisor es https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.

Crea un grupo de Workforce Identity

gcloud

Para crear el grupo de identidades de personal, ejecuta el siguiente comando:

gcloud iam workforce-pools create WORKFORCE_POOL_ID \
    --organization=ORGANIZATION_ID \
    --display-name="DISPLAY_NAME" \
    --description="DESCRIPTION" \
    --session-duration=SESSION_DURATION \
    --location=global

Reemplaza lo siguiente:

  • WORKFORCE_POOL_ID: Es un ID que elijas para representar tu Google Cloud grupo de personal. El ID del grupo debe ser único a nivel global en todos los grupos de identidades de personal de Google Cloud. Para obtener información sobre el formato del ID, consulta la sección Parámetros de consulta en la documentación de la API.
  • ORGANIZATION_ID: Es el ID numérico de tu Google Cloud organización para el grupo de identidades de personal. Los grupos de identidades de personal están disponibles en todos los proyectos y carpetas de la organización.
  • DISPLAY_NAME: Opcional Un nombre visible para tu grupo de identidad del personal.
  • DESCRIPTION: Opcional Una descripción del grupo de identidad del personal.
  • SESSION_DURATION: Opcional Duración de la sesión, expresada como un número al que se agrega s, por ejemplo, 3600s. La duración de la sesión determina el tiempo de acceso a los tokens de acceso de Google Cloud , las sesiones de acceso de la consola (federada) y las sesiones de acceso de la gcloud CLI de este grupo de personal son válidas. La duración predeterminada de la sesión es de una hora (3,600 s). El valor de duración de la sesión debe estar entre 15 minutos (900 s) y 12 horas (43,200 s).

Console

Para crear el grupo de identidades de personal, haz lo siguiente:

  1. En la consola de Google Cloud , ve a la página Grupos de identidades de personal:

    Ir a Grupos de identidades de personal

  2. Selecciona la organización para tu grupo de identidades del personal. Los grupos de identidades para cargas de trabajo están disponibles en todos los proyectos y carpetas de una organización.

  3. Haz clic en Crear grupo y haz lo siguiente:

    1. En el campo Nombre, ingresa el nombre visible del grupo. El ID del grupo se deriva automáticamente del nombre a medida que escribes y se muestra en el campo Nombre. Para actualizar el ID del grupo, haz clic en Editar junto a él.

    2. Opcional: En Descripción, ingresa una descripción del grupo.

    3. Para crear el grupo de identidades de personal, haz clic en Siguiente.

La duración de la sesión del grupo de identidades del personal se establece de forma predeterminada en una hora (3,600 s). La duración de la sesión determina el tiempo de validez de los tokens de acceso Google Cloud , la consola (federada) y las sesiones de acceso a gcloud CLI de este grupo de personal. Después de crear el grupo, puedes actualizarlo para establecer una duración de la sesión personalizada. La duración de la sesión debe ser de 15 minutos (900 s) a 12 horas (43,200 s).

Configura el proveedor de grupos de identidades de personal del flujo de código de OIDC

gcloud

Para crear el proveedor de grupos de identidades de personal de OIDC, ejecuta el siguiente comando:

gcloud iam workforce-pools providers create-oidc PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --location=global \
    --display-name=DISPLAY_NAME \
    --issuer-uri=ISSUER_URI \
    --client-id=CLIENT_ID \
--client-secret-value="OIDC_CLIENT_SECRET" \ --attribute-mapping=ATTRIBUTE_MAPPING \ --web-sso-response-type=code \ --web-sso-assertion-claims-behavior=merge-user-info-over-id-token-claims \ --extra-attributes-issuer-uri=EXTRA_ATTRIBUTES_ISSUER_URI \ --extra-attributes-client-id=EXTRA_ATTRIBUTES_CLIENT_ID \ --extra-attributes-client-secret-value=EXTRA_ATTRIBUTES_CLIENT_SECRET \ --extra-attributes-type=EXTRA_ATTRIBUTES_TYPE \ --extra-attributes-filter=EXTRA_ATTRIBUTES_FILTER \ --detailed-audit-logging

Reemplaza lo siguiente:

  • PROVIDER_ID: un ID de proveedor único. El prefijo gcp- está reservado y no se puede usar en un ID de grupo ni de proveedor.
  • WORKFORCE_POOL_ID: el ID del grupo de personal.
  • DISPLAY_NAME: Es el nombre visible del proveedor.
  • ISSUER_URI: Es el URI de la entidad emisora de la aplicación de Microsoft Entra ID que creaste anteriormente en este documento.
  • CLIENT_ID: Es el ID de cliente de tu aplicación de Microsoft Entra ID.
  • ATTRIBUTE_MAPPING: Es la asignación de atributos de Microsoft Entra ID a Google Cloud. Si usas marcas de --extra-attributes para consultar grupos desde Microsoft Entra ID, se ignorará cualquier asignación de google.groups que use reclamaciones estándar de SAML o OIDC. Por ejemplo, para asignar los atributos groups y subject de Microsoft Entra ID, usa la siguiente asignación de atributos:
    --attribute-mapping="google.groups=assertion.groups, google.subject=assertion.oid"

    Para obtener más información, consulta Asignación de atributos.

  • EXTRA_ATTRIBUTES_ISSUER_URI: Es el URI de la entidad emisora de tu aplicación de Microsoft Entra ID.
  • EXTRA_ATTRIBUTES_CLIENT_ID: Es el ID de cliente de tu aplicación de Microsoft Entra ID.
  • EXTRA_ATTRIBUTES_CLIENT_SECRET: Es el secreto del cliente adicional de tu aplicación de Microsoft Entra ID.
  • EXTRA_ATTRIBUTES_TYPE: Usa azure-ad-groups-mail para recuperar las direcciones de correo electrónico de los grupos. Usa azure-ad-groups-id para recuperar los IDs de los grupos. Usa azure-ad-groups-display-name para recuperar los nombres visibles de los grupos.
  • EXTRA_ATTRIBUTES_FILTER: Opcional Una expresión de filtro que se usa cuando se consulta la API de Microsoft Graph para grupos. Puedes usar este parámetro para asegurarte de que la cantidad de grupos recuperados del IdP permanezca por debajo del límite de 400 grupos.

    En el siguiente ejemplo, se recuperan los grupos que tienen el prefijo sales en su ID de correo electrónico:

    --extra-attributes-filter='"mail:sales"'

    La siguiente expresión recupera grupos con un nombre visible que contiene la cadena sales.

    --extra-attributes-filter='"displayName:sales"'
  • El registro de auditoría detallado de la federación de identidades de personal registra la información que se recibe de tu IdP en Logging. El registro de auditoría detallado puede ayudarte a solucionar problemas relacionados con la configuración de tu proveedor de grupos de identidades de personal. Para obtener información sobre cómo solucionar problemas de errores de asignación de atributos con el registro de auditoría detallado, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta Precios de Google Cloud Observability.

    Para inhabilitar el registro de auditoría detallado de un proveedor de grupos de identidades de personal, omite la marca --detailed-audit-logging cuando ejecutes gcloud iam workforce-pools providers create. Para inhabilitar el registro de auditoría detallado, también puedes actualizar el proveedor.

Console

  1. En la consola de Google Cloud , ve a la página Grupos de identidades de personal:
  2. Ir a Grupos de identidades de personal

  3. En la tabla Workforce Identity Pools, selecciona el grupo para el que deseas crear el proveedor.
  4. En la sección Proveedores, haz clic en Agregar proveedor.
  5. En la lista Selecciona un proveedor, elige tu proveedor de identidad (IdP).

    Si tu IdP no aparece en la lista, selecciona Generic Identity Provider.

  6. En Selecciona un protocolo de autenticación, elige OpenID Connect (OIDC).
  7. En la sección Crear un proveedor, haz lo siguiente:
    1. En Nombre, ingresa el nombre del proveedor.
    2. En Descripción, ingresa la descripción del proveedor.
    3. En Emisor (URL), ingresa el URI de la entidad emisora. El URI de la entidad emisora de OIDC debe tener un formato de URI válido y comenzar con https; por ejemplo, https://example.com/oidc.
    4. En ID de cliente, ingresa el ID de cliente de OIDC que está registrado con tu IdP de OIDC. El ID debe coincidir con la reclamación aud del JWT que emite tu IdP.
    5. Para crear un proveedor habilitado, asegúrate de que la opción Habilitar proveedor esté activada.

    6. Haz clic en Continuar.
  8. En la sección Comparte la información de tu proveedor con el IdP, copia la URL. En tu IdP, configura esta URL como el URI de redireccionamiento, que le informa a tu IdP dónde enviar el token de aserción después de acceder.
  9. Haz clic en Continuar.
  10. En la sección Configurar el acceso a la Web con OIDC, haz lo siguiente:
    1. En la lista Tipo de flujo, selecciona Código.
    2. En la lista Comportamiento de los reclamos de aserciones, selecciona una de las siguientes opciones:
      • Información del usuario y token de ID
      • Solo token de ID
    3. En el campo Secreto del cliente, ingresa el secreto del cliente de tu IdP.
  11. Haz clic en Continuar.
  12. En Configurar proveedor, puedes configurar una asignación de atributos y una condición de atributo. Para crear una asignación de atributos, haz lo siguiente: Puedes proporcionar el nombre del campo del IdP o una expresión con formato CEL que devuelva una cadena.
    1. Obligatorio: En OIDC 1, ingresa el asunto del IdP, por ejemplo, assertion.sub.
    2. Opcional: Para agregar asignaciones de atributos adicionales, haz lo siguiente:
      1. Haz clic en Agregar asignación.
      2. En Google n, donde n es un número, ingresa una de las claves compatibles conGoogle Cloud.
      3. En el campo OIDC n correspondiente, ingresa el nombre del campo específico de la IdP que deseas asignar, en formato CEL.
    3. Para aumentar la cantidad de grupos, haz lo siguiente:
      1. Selecciona Usar atributos adicionales.
      2. En el campo URI de la entidad emisora de atributos adicionales, ingresa la URL de la entidad emisora.
      3. En el campo ID de cliente de atributos adicionales, ingresa el ID de cliente.
      4. En el campo Secreto del cliente de atributos adicionales, ingresa el secreto del cliente.
      5. En la lista Tipo de atributo adicional, selecciona un tipo de atributo para los atributos adicionales.
      6. En el campo Filtro de atributos adicionales, ingresa una expresión de filtro que se use cuando se consulte la API de Microsoft Graph para grupos.
    4. Para crear una condición de atributo, haz lo siguiente:
      1. Haz clic en Agregar condición:
      2. En el campo Condiciones del atributo, ingresa una condición en formato CEL, por ejemplo, assertion.role == 'gcp-users'. Esta condición de ejemplo garantiza que solo los usuarios con el rol gcp-users puedan acceder mediante este proveedor.
      3. Para activar el registro de auditoría detallado, en Registro detallado, haz clic en el botón de activación Habilitar el registro de auditoría del valor de atributos.

        El registro de auditoría detallado de la federación de identidades de personal registra la información que se recibe de tu IdP en Logging. El registro de auditoría detallado puede ayudarte a solucionar problemas relacionados con la configuración de tu proveedor de grupos de identidades de personal. Para obtener información sobre cómo solucionar problemas de errores de asignación de atributos con el registro de auditoría detallado, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta Precios de Google Cloud Observability.

        Para inhabilitar el registro de auditoría detallado de un proveedor de grupos de identidades de personal, omite la marca --detailed-audit-logging cuando ejecutes gcloud iam workforce-pools providers create. Para inhabilitar el registro de auditoría detallado, también puedes actualizar el proveedor.

  13. Para crear el proveedor, haz clic en Enviar.

Configura una gran cantidad de grupos en Microsoft Entra ID con SAML 2.0

En esta sección, se describe cómo asignar hasta 400 grupos de Microsoft Entra ID a la federación de identidades de personal con el protocolo SAML 2.0.

Configura tu aplicación de Microsoft Entra ID

Para configurar tu aplicación, haz lo siguiente:

  1. En el portal de Microsoft Entra ID, haz lo siguiente:
    • Para registrar una aplicación nueva, sigue las instrucciones en Registra una aplicación nueva.
    • Para actualizar una aplicación existente, haz lo siguiente:
      • Ve a la página Overview del registro de tu aplicación de Microsoft Entra ID.
      • Navega a Entra ID > Registros de aplicaciones.

      • Selecciona la aplicación que quieres actualizar.
  2. Crea un nuevo secreto del cliente en la aplicación siguiendo las instrucciones que se indican en Certificados y secretos. Asegúrate de registrar el valor del secreto del cliente, ya que solo se muestra una vez.

    Toma nota de los siguientes valores de la aplicación que creaste o actualizaste. Proporcionarás los valores cuando configures el proveedor de grupos de identidades de personal más adelante en este documento.

    • Client ID
    • Issuer URI
    • Client Secret
    • Tenant ID
  3. Para recuperar los grupos de Microsoft Entra ID, agrega el permiso de API para permitir que la federación de identidades de personal acceda a la información de los usuarios desde Microsoft Entra ID con la API de Microsoft Graph y otorga el consentimiento del administrador. En Microsoft Entra ID, haz lo siguiente:

    1. Ve a API permissions.
    2. Haz clic en Agregar un permiso.
    3. Selecciona Microsoft API.
    4. Selecciona Permisos de aplicación.
    5. En el campo de búsqueda, ingresa User.ReadBasic.All.
    6. Haz clic en Agregar permisos.

    Puedes recuperar los grupos de Microsoft Entra ID con un identificador (ID) de objeto de grupo, una dirección de correo electrónico de grupo para los grupos habilitados para correo electrónico o un nombre visible de grupo.

    Si eliges recuperar los grupos como direcciones de correo electrónico de grupo o nombres visibles, se requiere el siguiente paso.

  4. Para recuperar los grupos de Microsoft Entra ID como direcciones de correo electrónico de grupo o nombres visibles, haz lo siguiente. Si recuperas grupos como identificadores de objetos de grupo, omite este paso.
    1. Ve a API permissions.
    2. Haz clic en Agregar un permiso.
    3. Selecciona Microsoft API.
    4. Selecciona Permisos de aplicación.
    5. En el campo de búsqueda, ingresa GroupMember.Read.All.
    6. Haz clic en Agregar permisos.

    Ve a la página Descripción general de la aplicación de Microsoft Entra ID que creaste o actualizaste anteriormente. Haz clic en Extremos. El URI de la entidad emisora es el URI del documento de metadatos de OIDC, sin incluir la ruta de acceso /.well-known/openid-configuration.

    Por ejemplo, si el documento de metadatos de OIDC es https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.well-known/openid-configuration, el URI del emisor es https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.

Crea un grupo de Workforce Identity

gcloud

Para crear el grupo de identidades de personal, ejecuta el siguiente comando:

gcloud iam workforce-pools create WORKFORCE_POOL_ID \
    --organization=ORGANIZATION_ID \
    --display-name="DISPLAY_NAME" \
    --description="DESCRIPTION" \
    --session-duration=SESSION_DURATION \
    --location=global

Reemplaza lo siguiente:

  • WORKFORCE_POOL_ID: Es un ID que elijas para representar tu Google Cloud grupo de personal. El ID del grupo debe ser único a nivel global en todos los grupos de identidades de personal de Google Cloud. Para obtener información sobre el formato del ID, consulta la sección Parámetros de consulta en la documentación de la API.
  • ORGANIZATION_ID: Es el ID numérico de tu Google Cloud organización para el grupo de identidades de personal. Los grupos de identidades de personal están disponibles en todos los proyectos y carpetas de la organización.
  • DISPLAY_NAME: Opcional Un nombre visible para tu grupo de identidad del personal.
  • DESCRIPTION: Opcional Una descripción del grupo de identidad del personal.
  • SESSION_DURATION: Opcional Duración de la sesión, expresada como un número al que se agrega s, por ejemplo, 3600s. La duración de la sesión determina el tiempo de acceso a los tokens de acceso de Google Cloud , las sesiones de acceso de la consola (federada) y las sesiones de acceso de la gcloud CLI de este grupo de personal son válidas. La duración predeterminada de la sesión es de una hora (3,600 s). El valor de duración de la sesión debe estar entre 15 minutos (900 s) y 12 horas (43,200 s).

Console

Para crear el grupo de identidades de personal, haz lo siguiente:

  1. En la consola de Google Cloud , ve a la página Grupos de identidades de personal:

    Ir a Grupos de identidades de personal

  2. Selecciona la organización para tu grupo de identidades del personal. Los grupos de identidades para cargas de trabajo están disponibles en todos los proyectos y carpetas de una organización.

  3. Haz clic en Crear grupo y haz lo siguiente:

    1. En el campo Nombre, ingresa el nombre visible del grupo. El ID del grupo se deriva automáticamente del nombre a medida que escribes y se muestra en el campo Nombre. Para actualizar el ID del grupo, haz clic en Editar junto a él.

    2. Opcional: En Descripción, ingresa una descripción del grupo.

    3. Para crear el grupo de identidades de personal, haz clic en Siguiente.

La duración de la sesión del grupo de identidades del personal se establece de forma predeterminada en una hora (3,600 s). La duración de la sesión determina el tiempo de validez de los tokens de acceso Google Cloud , la consola (federada) y las sesiones de acceso a gcloud CLI de este grupo de personal. Después de crear el grupo, puedes actualizarlo para establecer una duración de la sesión personalizada. La duración de la sesión debe ser de 15 minutos (900 s) a 12 horas (43,200 s).

Configura el proveedor de grupos de identidades de personal de SAML 2.0

gcloud

Para crear el proveedor de grupos de identidades de personal de SAML, ejecuta el siguiente comando:

gcloud iam workforce-pools providers create-saml PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --location=global \
    --display-name=DISPLAY_NAME \
    --idp-metadata-path=XML_METADATA_PATH \
    --attribute-mapping=ATTRIBUTE_MAPPING \
    --extra-attributes-issuer-uri=EXTRA_ATTRIBUTES_ISSUER_URI \
    --extra-attributes-client-id=EXTRA_ATTRIBUTES_CLIENT_ID \
    --extra-attributes-client-secret-value=EXTRA_ATTRIBUTES_CLIENT_SECRET \
    --extra-attributes-type=EXTRA_ATTRIBUTES_TYPE  \
    --extra-attributes-filter=EXTRA_ATTRIBUTES_FILTER \
    --detailed-audit-logging
    

Reemplaza lo siguiente:

  • PROVIDER_ID: un ID de proveedor único. El prefijo gcp- está reservado y no se puede usar en un ID de grupo ni de proveedor.
  • WORKFORCE_POOL_ID: el ID del grupo de personal.
  • DISPLAY_NAME: Es el nombre visible del proveedor.
  • XML_METADATA_PATH: Es la ruta de acceso al archivo de metadatos XML de SAML 2.0.
  • ATTRIBUTE_MAPPING: Es la asignación de atributos de Microsoft Entra ID a Google Cloud. Si usas marcas de --extra-attributes para consultar grupos desde Microsoft Entra ID, se ignorará cualquier asignación de google.groups que use reclamaciones estándar de SAML o OIDC. Por ejemplo, para asignar los atributos groups y subject de Microsoft Entra ID, usa la siguiente asignación de atributos:
    --attribute-mapping="google.groups=assertion.groups, google.subject=assertion.oid"

    Para obtener más información, consulta Asignación de atributos.

  • EXTRA_ATTRIBUTES_ISSUER_URI: Es el URI de la entidad emisora de tu aplicación de Microsoft Entra ID.
  • EXTRA_ATTRIBUTES_CLIENT_ID: Es el ID de cliente de tu aplicación de Microsoft Entra ID.
  • EXTRA_ATTRIBUTES_CLIENT_SECRET: Es el secreto del cliente adicional de tu aplicación de Microsoft Entra ID.
  • EXTRA_ATTRIBUTES_TYPE: Usa azure-ad-groups-mail para recuperar las direcciones de correo electrónico de los grupos. Usa azure-ad-groups-id para recuperar los IDs de los grupos. Usa azure-ad-groups-display-name para recuperar los nombres visibles de los grupos.
  • EXTRA_ATTRIBUTES_FILTER: Opcional Una expresión de filtro que se usa cuando se consulta la API de Microsoft Graph para grupos. Puedes usar este parámetro para asegurarte de que la cantidad de grupos recuperados del IdP permanezca por debajo del límite de 400 grupos.

    En el siguiente ejemplo, se recuperan los grupos que tienen el prefijo sales en su ID de correo electrónico:

    --extra-attributes-filter='"mail:sales"'

    La siguiente expresión recupera grupos con un nombre visible que contiene la cadena sales.

    --extra-attributes-filter='"displayName:sales"'
  • El registro de auditoría detallado de la federación de identidades de personal registra la información que se recibe de tu IdP en Logging. El registro de auditoría detallado puede ayudarte a solucionar problemas relacionados con la configuración de tu proveedor de grupos de identidades de personal. Para obtener información sobre cómo solucionar problemas de errores de asignación de atributos con el registro de auditoría detallado, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta Precios de Google Cloud Observability.

    Para inhabilitar el registro de auditoría detallado de un proveedor de grupos de identidades de personal, omite la marca --detailed-audit-logging cuando ejecutes gcloud iam workforce-pools providers create. Para inhabilitar el registro de auditoría detallado, también puedes actualizar el proveedor.

Console

  1. En la consola de Google Cloud , ve a la página Grupos de identidades de personal:
  2. Ir a Grupos de identidades de personal

  3. En la tabla Workforce Identity Pools, selecciona el grupo para el que deseas crear el proveedor.
  4. En la sección Proveedores, haz clic en Agregar proveedor.
  5. En la lista Selecciona un proveedor, elige tu proveedor de identidad (IdP).

    Si tu IdP no aparece en la lista, selecciona Generic Identity Provider.

  6. En Selecciona un protocolo de autenticación, selecciona SAML.
  7. En la sección Crear un proveedor, haz lo siguiente:
    1. En Nombre del proveedor, ingresa un nombre para el proveedor.
    2. Opcional: En Descripción, ingresa una descripción para el proveedor.
    3. En Archivo de metadatos de IdP (XML), selecciona el archivo XML de metadatos que generaste antes en esta guía.
    4. Para crear un proveedor habilitado, asegúrate de que la opción Habilitar proveedor esté activada.
    5. Haz clic en Continuar.
  8. En la sección Comparte la información de tu proveedor, copia las URLs. En tu IdP, configura la primera URL como el ID de la entidad, que identifica tu aplicación para el IdP. Configura la otra URL como el URI de redireccionamiento, que le informa a tu IdP dónde enviar el token de aserción después de acceder.
  9. Haz clic en Continuar.
  10. En la sección Configurar proveedor, haz lo siguiente:
    1. En Asignación de atributos, ingresa una expresión CEL para google.subject.
    2. Opcional: Para ingresar otras asignaciones, haz clic en Agregar asignación y, luego, ingresa otras asignaciones:
    3. google.subject=assertion.oid
      attribute.costcenter=assertion.attributes.costcenter[0]
      En este ejemplo, se asignan los atributos de IdP assertion.oid y assertion.attributes.costcenter[0] a los atributos Google Cloud google.subject y attribute.costcenter, respectivamente.
    4. Si seleccionaste Microsoft Entra ID como tu IdP, puedes aumentar la cantidad de grupos.
      1. Selecciona Usar atributos adicionales.
      2. En el campo URI de la entidad emisora de atributos adicionales, ingresa la URL de la entidad emisora.
      3. En el campo ID de cliente de atributos adicionales, ingresa el ID de cliente.
      4. En el campo Secreto del cliente de atributos adicionales, ingresa el secreto del cliente.
      5. En la lista Tipo de atributos adicionales, selecciona un tipo de atributo para los atributos adicionales.
      6. En el campo Filtro de atributos adicionales, ingresa una expresión de filtro que se use cuando se consulte la API de Microsoft Graph para grupos.
    5. Opcional: Para agregar una condición de atributo, haz clic en Agregar condición y, luego, ingresa una expresión de CEL que represente una condición de atributo. Por ejemplo, para limitar el atributo ipaddr a un rango de IP determinado, puedes establecer la condición assertion.attributes.ipaddr.startsWith('98.11.12.'). Esta condición de ejemplo garantiza que solo los usuarios con una dirección IP que comienza con 98.11.12. puedan acceder mediante este proveedor de personal.
    6. Haz clic en Continuar.
    7. Para activar el registro de auditoría detallado, en Registro detallado, haz clic en el botón de activación Habilitar el registro de auditoría del valor de atributos.

      El registro de auditoría detallado de la federación de identidades de personal registra la información que se recibe de tu IdP en Logging. El registro de auditoría detallado puede ayudarte a solucionar problemas relacionados con la configuración de tu proveedor de grupos de identidades de personal. Para obtener información sobre cómo solucionar problemas de errores de asignación de atributos con el registro de auditoría detallado, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta Precios de Google Cloud Observability.

      Para inhabilitar el registro de auditoría detallado de un proveedor de grupos de identidades de personal, omite la marca --detailed-audit-logging cuando ejecutes gcloud iam workforce-pools providers create. Para inhabilitar el registro de auditoría detallado, también puedes actualizar el proveedor.

  11. Para crear el proveedor, haz clic en Enviar.

Verifica la configuración de tu proveedor

Antes de probar el flujo de acceso del usuario final, puedes verificar que la configuración del proveedor sea correcta y que Google Cloud pueda intercambiar tokens con tu IdP.

La página Valida los atributos de tu proveedor en la consola de Google Cloud incluye un visualizador de atributos que te permite probar de forma interactiva tu configuración y depurar expresiones de Common Expression Language (CEL). Puedes usar el visualizador de atributos para hacer lo siguiente:

  • Consulta los atributos sin procesar que se envían en la aserción del IdP.
  • Verifica que las asignaciones y las condiciones de los atributos transformen correctamente esos atributos.
  • Depura expresiones CEL complejas en tiempo real.

Para verificar la configuración del proveedor, haz lo siguiente:

  1. Para habilitar el flujo de acceso basado en el navegador para la federación de identidades de personal, agrega https://auth.cloud.google/signin-callback/locations/global/workforcePools/POOL_ID/providers/PROVIDER_ID a la lista de URIs de redireccionamiento permitidos de tu IdP.
  2. En la consola de Google Cloud , ve a Grupos de identidades de personal.

    Ir a Grupos de identidades de personal
  3. En la lista de grupos, haz clic en el nombre del grupo que deseas verificar.
  4. En la página Detalles del grupo de personal, haz clic en el nombre del IdP que deseas verificar.
  5. En la página Detalles del proveedor, haz clic en Depurar el token del IdP.
  6. En el cuadro de diálogo Acceder, accede a tu IdP como usuario de prueba.

En la página Valida los atributos de tu proveedor, se muestran los atributos asignados y el resultado de la condición del atributo.

En la sección Atributos asignados de tu token de IdP, se muestra cómo se completan los atributos de Google, como google.subject, desde el token de tu IdP según la configuración de asignación. Si una asignación es incorrecta, aparecerá un ícono de error.

En la sección Condición del atributo, se muestra el resultado booleano de tu condición. Si la condición se evalúa como false, se bloquea el acceso.

Para ver el token de aserción completo, haz clic en Ver token completo. Aquí se muestra el objeto JSON sin procesar de tu IdP. Haz referencia a una propiedad de nivel superior en tus asignaciones con el formato assertion.PROPERTY_NAME.

Edita la configuración del proveedor

Para corregir cualquier error, puedes editar la configuración:

  1. En la página Valida los atributos de tu proveedor, haz clic en Editar.
  2. Realiza los cambios necesarios.
  3. Para iniciar una prueba nueva y ver los resultados actualizados, haz clic en Guardar y volver a recuperar el token.

Otorga roles de IAM a grupos

En esta sección, otorgarás roles a los grupos en los recursos de Google Cloud . Para obtener más información sobre los identificadores principales de la federación de identidades de personal, consulta Representa a los usuarios del grupo de personal en políticas de IAM.

En el siguiente ejemplo, se otorga el rol de administrador de almacenamiento (roles/storage.admin) a los usuarios de un grupo de Microsoft Entra ID.

gcloud projects add-iam-policy-binding PROJECT_ID \
    --role="roles/storage.admin" \
    --member="principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID"

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID del proyecto.
  • WORKFORCE_POOL_ID: El ID del grupo de identidades de personal
  • GROUP_ID: Es el identificador del grupo, que depende del valor de --extra-attributes-type que se usó para crear el proveedor de grupos de identidades de personal, de la siguiente manera:
    • azure-ad-groups-mail: El identificador del grupo es una dirección de correo electrónico, por ejemplo, admin-group@altostrat.com.
    • azure-ad-groups-id: El identificador del grupo es un UUID, por ejemplo: abcdefgh-0123-0123-abcdef

Accede y prueba el acceso

En esta sección, accederás como un usuario de grupo de Workforce Identity y probarás que tienes acceso a los recursos de Google Cloud .

Acceder

En esta sección, se muestra cómo acceder como un usuario federado y acceder a los recursos deGoogle Cloud .

Acceso a la consola (federada)

Para acceder a la consola de Google Cloud federación de identidades de personal, también conocida como la consola (federada), haz lo siguiente:

  1. Ve a la página de acceso de la consola (federada).

    Ir a la consola (federada)

  2. Ingresa el nombre del proveedor, que tiene el siguiente formato:
    locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
  3. Si se te solicita, ingresa las credenciales de usuario en Microsoft Entra ID.

    Si inicias un acceso iniciado por IdP, usa la siguiente URL de retransmisión: https://console.cloud.google/.

Acceso con el navegador de la gcloud CLI

Para acceder a la gcloud CLI con un flujo de acceso basado en el navegador, haz lo siguiente:

Crea un archivo de configuración

Ejecuta el siguiente comando para crear un archivo de configuración de acceso:

Linux y macOS

gcloud iam workforce-pools create-login-config \
    locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID \
    --output-file=LOGIN_CONFIG_PATH

Windows (PowerShell)

gcloud iam workforce-pools create-login-config `
    locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID `
    --output-file=LOGIN_CONFIG_PATH

Reemplaza lo siguiente:

  • WORKFORCE_POOL_ID: Es el ID del grupo de federación de identidades de personal.
  • WORKFORCE_PROVIDER_ID: Es el ID del proveedor de la federación de identidades de personal.
  • LOGIN_CONFIG_PATH: Es la ruta de acceso en la que se escribirá el archivo de configuración de acceso. Por ejemplo, login-config.json

El archivo de configuración de acceso contiene los extremos que usa la gcloud CLI para habilitar el flujo de autenticación basado en el navegador y establecer el público en el IdP que se configuró en el proveedor del grupo de identidades de personal. El archivo no contiene información confidencial.

El contenido del archivo de configuración de acceso se ve de la siguiente manera:

{
  "universe_domain": "googleapis.com",
  "universe_cloud_web_domain": "cloud.google",
  "type": "external_account_authorized_user_login_config",
  "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID",
  "auth_url": "https://auth.cloud.google/authorize",
  "token_url": "https://sts.googleapis.com/v1/oauthtoken",
  "token_info_url": "https://sts.googleapis.com/v1/introspect"
}

Accede con autenticación basada en el navegador

Apunta al archivo de configuración de acceso con una variable de entorno, una propiedad en la configuración activa de la gcloud CLI o úsalo directamente con el comando gcloud auth login:

Variable de entorno

Para usar el archivo de configuración de acceso con una variable de entorno, completa las siguientes instrucciones:

  1. Establece la variable de entorno CLOUDSDK_AUTH_LOGIN_CONFIG_FILE en la ruta de acceso del archivo de configuración de acceso.
  2. Ejecuta el comando siguiente:

    gcloud auth login
  3. Gcloud CLI hace referencia a la variable de entorno para encontrar el archivo de configuración de acceso y, luego, inicia el proceso de autenticación. Sigue el flujo basado en el navegador para autenticar y autorizar gcloud CLI a acceder a los recursos en tu nombre para futuros comandos.

Para dejar de usar el archivo de configuración de acceso para los comandos gcloud auth login, borra la variable de entorno CLOUDSDK_AUTH_LOGIN_CONFIG_FILE.

Configuración de gcloud CLI

Para usar el archivo de configuración de acceso con una propiedad de configuración de gcloud CLI, completa las siguientes instrucciones:

  1. Establece la propiedad auth/login_config_file de la configuración activa de gcloud CLI en la ruta de acceso del archivo de configuración de acceso con el siguiente comando:

    gcloud config set auth/login_config_file LOGIN_CONFIG_PATH
  2. Ejecuta el comando siguiente:

    gcloud auth login
  3. Gcloud CLI hace referencia a la propiedad de configuración para encontrar el archivo de configuración de acceso y, luego, inicia el proceso de autenticación. Sigue el flujo basado en el navegador para autenticar y autorizar gcloud CLI a acceder a los recursos en tu nombre para futuros comandos.

Para dejar de usar el archivo de configuración de acceso para los comandos de gcloud auth login, anula la configuración de la propiedad con el siguiente comando:

gcloud config unset auth/login_config_file

gcloud auth login

Para usar el archivo de configuración de acceso directamente con el comando gcloud auth login, sigue estas instrucciones:

  • Si usaste la marca --activate cuando creaste el archivo de configuración de acceso, ejecuta el siguiente comando:

    gcloud auth login
  • Si no usaste la marca --activate cuando creaste el archivo de configuración de acceso, ejecuta el siguiente comando:

    Linux y macOS

    gcloud auth login \
        --login-config=LOGIN_CONFIG_PATH

    Windows (PowerShell)

    gcloud auth login `
        --login-config=LOGIN_CONFIG_PATH

    Reemplaza LOGIN_CONFIG_PATH por la ruta de acceso del archivo de configuración de acceso.

El comando gcloud auth login almacena las credenciales de acceso en tu directorio principal. La principal autenticada se convierte en la principal activa en tu configuración activa de gcloud CLI. A menos que se anulen, gcloud CLI usa estas credenciales almacenadas para acceder a Google Cloud.

Acceso sin interfaz gráfica de la gcloud CLI

Para acceder a Microsoft Entra ID con la gcloud CLI, haz lo siguiente:

OIDC

  1. Sigue los pasos de la página Envía la solicitud de acceso. Permite que el usuario acceda a tu aplicación con Microsoft Entra ID a través de OIDC.

  2. Copia el token de ID del parámetro id_token de la URL de redireccionamiento y guárdalo en un archivo en una ubicación segura de tu máquina local. En el paso posterior, debes configurar PATH_TO_OIDC_ID_TOKEN en la ruta de acceso a este archivo.

  3. Genera un archivo de configuración similar al del ejemplo que se muestra más adelante en este paso ejecutando el siguiente comando:

    gcloud iam workforce-pools create-cred-config \
        locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID \
        --subject-token-type=urn:ietf:params:oauth:token-type:id_token \
        --credential-source-file=PATH_TO_OIDC_ID_TOKEN \
        --workforce-pool-user-project=WORKFORCE_POOL_USER_PROJECT \
        --output-file=config.json
    

    Reemplaza lo siguiente:

    • WORKFORCE_POOL_ID: El ID del grupo de la identidad de personal.
    • WORKFORCE_PROVIDER_ID: El ID del proveedor de grupo de identidades de personal.
    • PATH_TO_OIDC_ID_TOKEN: la ruta a la ubicación del archivo en la que se almacena el token de IdP.
    • WORKFORCE_POOL_USER_PROJECT: El número o ID del proyecto que se usa para la cuota y la facturación. La principal debe tener el permiso serviceusage.services.use en este proyecto.

    Cuando se completa el comando, Microsoft Entra ID crea el siguiente archivo de configuración:

    {
      "type": "external_account",
      "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID",
      "subject_token_type": "urn:ietf:params:oauth:token-type:id_token",
      "token_url": "https://sts.googleapis.com/v1/token",
      "workforce_pool_user_project": "WORKFORCE_POOL_USER_PROJECT",
      "credential_source": {
        "file": "PATH_TO_OIDC_CREDENTIALS"
      }
    }
    
  4. Abre la gcloud CLI y ejecuta el siguiente comando:

    gcloud auth login --cred-file=PATH_TO_OIDC_CREDENTIALS
    

    Reemplaza PATH_TO_OIDC_CREDENTIALS por la ruta de acceso al archivo de salida de un paso anterior.

    La gcloud CLI publica las credenciales con transparencia en el extremo del servicio de tokens de seguridad. En el extremo, se intercambia por tokens de acceso Google Cloud temporales.

    Ahora puedes ejecutar comandos de gcloud CLI enGoogle Cloud.

SAML

  1. Haz que un usuario acceda a tu aplicación de Microsoft Entra ID y obtén la respuesta de SAML.

  2. Guarda la respuesta SAML que muestra Microsoft Entra ID en una ubicación segura de tu máquina local y, luego, almacena la ruta de acceso de la siguiente manera:

    SAML_ASSERTION_PATH=SAML_ASSERTION_PATH
    
  3. Para generar un archivo de configuración de credenciales, ejecuta el siguiente comando:

    gcloud iam workforce-pools create-cred-config \
        locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID \
        --subject-token-type=urn:ietf:params:oauth:token-type:saml2 \
        --credential-source-file=SAML_ASSERTION_PATH  \
        --workforce-pool-user-project=PROJECT_ID  \
        --output-file=config.json
    

    Reemplaza lo siguiente:

    • WORKFORCE_PROVIDER_ID: el ID del proveedor del grupo de identidades de personal que creaste antes en esta guía
    • WORKFORCE_POOL_ID: el ID del grupo de identidades de personal que creaste antes en esta guía.
    • SAML_ASSERTION_PATH: la ruta de acceso del archivo de aserción de SAML
    • PROJECT_ID: Es el ID del proyecto.

    El archivo de configuración que se genera es similar al siguiente:

    {
       "type": "external_account",
       "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID",
       "subject_token_type": "urn:ietf:params:oauth:token-type:saml2",
       "token_url": "https://sts.googleapis.com/v1/token",
       "credential_source": {
         "file": "SAML_ASSERTION_PATH"
       },
       "workforce_pool_user_project": "PROJECT_ID"
    }
    
  4. Para acceder a la gcloud CLI con el intercambio de tokens de la federación de identidades de personal, ejecuta el siguiente comando:

    gcloud auth login --cred-file=config.json
    

    Luego, la gcloud CLI intercambia de manera transparente tus credenciales de Microsoft Entra ID por tokens de acceso temporales de Google Cloud . Los tokens de acceso te permiten acceder a Google Cloud.

    Verás un resultado similar al siguiente:

    Authenticated with external account user credentials for:
    [principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_ID].
  5. Para enumerar las cuentas con credenciales y tu cuenta activa, ejecuta el siguiente comando:

    gcloud auth list
    

Pruebe el acceso

Ahora tienes acceso a los productos de Google Cloud que admiten la federación de identidades de personal y a los que se te otorga acceso. En una sección anterior de este documento, otorgaste el rol de administrador de almacenamiento (roles/storage.admin) a todas las identidades dentro del identificador de grupo que especificaste en gcloud projects add-iam-policy-binding para el proyecto TEST_PROJECT_ID.

Para probar que tienes acceso, enumera los buckets de Cloud Storage.

Consola (federada)

Para probar que tienes acceso con la consola (federada), haz lo siguiente:

  • Ve a la página de Cloud Storage

    Ir a Cloud Storage

  • Verifica que puedas ver una lista de los buckets existentes para TEST_PROJECT_ID.

gcloud CLI

Para probar que tienes acceso con gcloud CLI, puedes enumerar los buckets y objetos de Cloud Storage del proyecto al que tienes acceso. Para hacer esto, ejecuta el siguiente comando. La principal debe tener el permiso serviceusage.services.use en el proyecto especificado.

gcloud storage ls --project="TEST_PROJECT_ID"

Borrar usuarios

La federación de identidades de personal crea metadatos y recursos de usuario para identidades de usuario federadas. Si eliges borrar usuarios en tu IdP, también debes borrar de forma explícita estos recursos en Google Cloud. Para hacerlo, consulta Borra los usuarios de la federación de identidades de personal y sus datos.

Es posible que veas que los recursos siguen asociados con un usuario que se borró. Esto se debe a que para borrar metadatos y recursos del usuario se requiere una operación de larga duración. Después de iniciar la eliminación de la identidad de un usuario, los procesos que este inició antes de la eliminación pueden seguir ejecutándose hasta que se completen o se cancelen los procesos.

¿Qué sigue?