Configurar Workforce Identity Federation con Okta e iniciar sesión de usuarios

En esta guía se explica cómo configurar la federación de identidades de Workforce con Okta como proveedor de identidades (IdP), gestionar el acceso y permitir que los usuarios inicien sesión para acceder aTrusted Cloud by S3NS servicios que admiten la federación de identidades de Workforce.

Antes de empezar

  1. Asegúrate de que tienes una organización de Trusted Cloud configurada.
  2. Define la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN como s3nsapis.fr.
  3. Instala Google Cloud CLI y, a continuación, inicia sesión en gcloud CLI con tu identidad federada. Después de iniciar sesión, inicializa la CLI de Google Cloud ejecutando el siguiente comando:

    gcloud init
  4. Para iniciar sesión, tu proveedor de identidades debe proporcionar información de autenticación firmada: los proveedores de identidades de OIDC deben proporcionar un JWT y las respuestas de los proveedores de identidades de SAML deben estar firmadas.
  5. Para recibir información importante sobre los cambios que se produzcan en tu organización o en tusTrusted Cloud productos, debes proporcionar contactos esenciales. Para obtener más información, consulta la descripción general de la Federación de Identidades de Workforce.

Costes

La federación de identidades para los trabajadores está disponible como función gratuita. Sin embargo, el registro de auditoría detallado de la federación de identidades de Workforce 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 Workforce, pide a tu administrador que te conceda el rol de administrador de grupos de Workforce de gestión de identidades y accesos (roles/iam.workforcePoolAdmin) en la organización. Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.

También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.

Como alternativa, el rol básico de propietario de gestión de identidades y accesos (roles/owner) también incluye permisos para configurar la federación de identidades de los trabajadores. No debes conceder roles básicos en un entorno de producción, pero sí puedes hacerlo en un entorno de desarrollo o de pruebas.

Crear un grupo de identidades de Workforce

gcloud

Para crear el grupo de identidades de Workforce, 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

Haz los cambios siguientes:

  • WORKFORCE_POOL_ID: un ID que elijas para representar tu Trusted Cloud grupo de Workforce. Para obtener información sobre el formato del ID, consulta la sección Parámetros de consulta de la documentación de la API.
  • ORGANIZATION_ID: el ID numérico de tu organización Trusted Cloud para el grupo de identidades de Workforce. Los grupos de identidades de Workforce están disponibles en todos los proyectos y carpetas de la organización.
  • DISPLAY_NAME: opcional. Nombre visible del grupo de identidades de Workforce.
  • DESCRIPTION: opcional. Descripción del grupo de identidades de Workforce.
  • SESSION_DURATION: opcional. La duración de la sesión, expresada como un número seguido de s. Por ejemplo, 3600s. La duración de la sesión determina cuánto tiempo son válidos los Trusted Cloud tokens de acceso, las sesiones de inicio de sesión de la consola (federadas) y las sesiones de inicio de sesión de la CLI de gcloud de este grupo de empleados. La duración de la sesión es de una hora (3600 s) de forma predeterminada. El valor de la duración de la sesión debe estar entre 15 minutos (900 s) y 12 horas (43.200 s).

Consola

Para crear el grupo de identidades de Workforce, sigue estos pasos:

  1. En la Trusted Cloud consola, ve a la página Grupos de identidades de la fuerza de trabajo:

    Ir a Grupos de identidades de Workforce

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

  3. Haz clic en Crear grupo y sigue estos pasos:

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

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

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

La duración de la sesión del grupo de identidades de Workforce es de una hora (3600 s) de forma predeterminada. La duración de la sesión determina cuánto tiempo son válidas las sesiones de inicio de sesión de los tokens de acceso, la consola (federada) y la CLI de gcloud de este grupo de empleados. Trusted Cloud Una vez que hayas creado el grupo, podrás actualizarlo para definir una duración de sesión personalizada. La duración de la sesión debe ser de entre 15 minutos (900 s) y 12 horas (43.200 s).

Crear una integración de aplicación de Okta

En esta sección se explica cómo crear una integración de aplicación de Okta mediante la consola de administración de Okta. Para obtener más información, consulta el artículo Crear integraciones de aplicaciones personalizadas.

Los grupos de identidades de Workforce admiten la federación mediante los protocolos OIDC y SAML.

Consulta la guía de integración de OIDC y SAML de Okta para obtener más información. En esta sección se describe la configuración básica.

OIDC

Para crear una integración de aplicación de Okta que use el protocolo OIDC, sigue estos pasos:

  1. Inicia sesión en la consola de administración de Okta.
  2. Ve a Aplicaciones > Aplicaciones.
  3. Para empezar a configurar la integración de la aplicación, haz lo siguiente:

    1. Haz clic en Create App Integration (Crear integración de aplicación).
    2. En Método de inicio de sesión, selecciona OIDC - OpenID Connect.
    3. En Tipo de aplicación, selecciona un tipo de aplicación (por ejemplo, Aplicación web).
    4. Para crear la aplicación, haz clic en Siguiente.
    5. En Nombre de la integración de la aplicación, introduzca un nombre para su aplicación.
    6. En la sección Tipo de autorización, marca la casilla Implícito (híbrido).
    7. En la sección URIs de redirección de inicio de sesión, introduce una URL de redirección en el campo de texto. Se redirige a los usuarios a esta URL después de que hayan iniciado sesión correctamente. Si vas a configurar el acceso a la consola (federada), utiliza el siguiente formato de URL:

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

      Haz los cambios siguientes:

      • WORKFORCE_POOL_ID: el ID del grupo de Workforce que has creado anteriormente en esta guía.
      • WORKFORCE_PROVIDER_ID: un ID de proveedor de identidades de Workforce de tu elección. Por ejemplo, okta-oidc-provider. Para obtener información sobre el formato del ID, consulta la sección Parámetros de consulta de la documentación de la API.
    8. Selecciona la casilla Saltar la asignación de grupos por ahora.

    9. Para guardar la integración de la aplicación, haz clic en Guardar.

  4. Asigna una integración de aplicación a un usuario.

  5. Opcional: Para añadir atributos personalizados a un perfil de usuario de Okta, haz lo siguiente:

    1. En Tipo de datos, selecciona string.
    2. En Nombre visible, introduce Department.
    3. En Nombre de la variable, introduce department.
    4. Para guardar la asignación, haz clic en Guardar.

    Para obtener más información sobre cómo añadir atributos personalizados, consulta el artículo Añadir atributos personalizados a un perfil de usuario de Okta.

  6. Opcional: Para crear asignaciones de los atributos que se envían en el token de OIDC, en Directorio, haz clic en Editor de perfil y sigue estos pasos:

    1. Busca la aplicación OIDC que has creado anteriormente en esta guía.
    2. Haz clic en Mappings (Asignaciones).
    3. Selecciona la pestaña Usuario de Okta a aplicación.
    4. En la pestaña Perfil de usuario de Okta, en un cuadro combinado disponible, introduce department. Okta autocompleta el campo con user.department.
    5. Para guardar las asignaciones, haz clic en Guardar asignaciones. Para obtener más información, consulta el artículo Añadir mapeo de atributo.

    Para obtener más información sobre las asignaciones, consulta el artículo Asignar atributos de Okta a atributos de aplicación en el editor de perfiles.

  7. Opcional: Para configurar una reclamación de grupos, haz lo siguiente:

    1. Si usas un servidor de autorización de una organización, haz lo siguiente:

      1. Ve a Aplicaciones > Aplicaciones.
      2. Selecciona la aplicación cliente OpenID Connect que has creado anteriormente en esta sección.
      3. Ve a la pestaña Inicio de sesión.
      4. En la sección OpenID Connect ID Token, haz clic en Editar.
      5. En la sección Tipo de reclamación de grupos, puede seleccionar una de las siguientes opciones:
        • Selecciona Expresión.
        • Selecciona Coincide con la regex e introduce .*.
      6. Para guardar la reclamación de grupo, haz clic en Guardar.
      7. Si quieres que los usuarios inicien sesión mediante la consola (federada) o el flujo de inicio de sesión basado en navegador de la CLI de gcloud, haz lo siguiente cuando crees tu proveedor de identidades de la fuerza de trabajo, más adelante en este documento:

        1. Asegúrate de usar las instrucciones de gcloud CLI para poder usar la marca --web-sso-additional-scopes.

        2. Cuando crees el proveedor de grupos de identidades de empleados, envía groups como ámbito adicional en --web-sso-additional-scopes. De esta forma, se solicita la reclamación de grupos a Okta durante el inicio de sesión.

    2. Si usas un servidor de autorización personalizado, haz lo siguiente:

      1. En la consola de administración, vaya al menú Seguridad y seleccione API.
      2. Selecciona el servidor de autorización personalizado que quieras configurar.
      3. Ve a la pestaña Reclamaciones y haz clic en Añadir reclamación.
      4. Escribe un nombre para la reclamación. En este ejemplo, llámalo groups.
      5. En tu reclamación, en Incluir en el tipo de token, selecciona Token de ID y, a continuación, Siempre.
      6. Selecciona Grupos como Tipo de valor.
      7. En el cuadro desplegable Filtro, seleccione Coincide con la expresión regular y, a continuación, introduzca la siguiente expresión como valor: .*
      8. Haz clic en Crear.

Para obtener más información sobre las reclamaciones de grupos, consulta el artículo Añadir una reclamación de grupos.

SAML

Para crear una integración de aplicación de Okta que use el protocolo SAML, sigue estos pasos:

  1. Inicia sesión en la consola de administración de Okta.
  2. Ve a Aplicaciones > Aplicaciones.
  3. Haz clic en Create App Integration (Crear integración de aplicación).
  4. En Método de inicio de sesión, selecciona SAML 2.0 y haz clic en Siguiente.
  5. Introduce un nombre para tu aplicación y haz clic en Siguiente para ir a las opciones de Configurar SAML.
  6. En Single Sign On URL (URL de inicio de sesión único), introduce una URL de redirección. Esta es la URL a la que se redirige a los usuarios después de iniciar sesión correctamente. Si vas a configurar el acceso a la consola, utiliza el siguiente formato de URL.

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

  7. Introduce el URI de audiencia (SP Entity ID). El ID tiene el siguiente formato:

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

    Haz los cambios siguientes:

    • WORKFORCE_POOL_ID: el ID del grupo de identidades de Workforce que has creado anteriormente en esta guía
    • WORKFORCE_PROVIDER_ID: un ID de proveedor de identidades de Workforce que elijas. Por ejemplo, okta-saml-provider.

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

  8. Opcional: Usa Attribute Statements para especificar los atributos personalizados que quieras enviar en la aserción SAML. Una vez configurados, estos atributos se pueden usar en Trusted Cloud para crear políticas de gestión de acceso o en attribute_condition. Por ejemplo, en esta guía se asigna el departamento de la siguiente manera:

    Nombre Valor
    department user.department

    Opcional: Para añadir la reclamación de grupos, que se usará más adelante en esta guía, consulta Cómo transferir la pertenencia a grupos de un usuario en una aserción SAML.

  9. Termina de crear la integración de la aplicación Okta.

Crear un proveedor de grupos de identidades de empleados

En esta sección se describe cómo crear un proveedor de grupo de identidades de la fuerza de trabajo para que los usuarios de tu IdP puedan acceder a Trusted Cloud. Puedes configurar el proveedor para que use el protocolo OIDC o SAML.

Crear un proveedor de grupos de identidades de empleados OIDC

Para crear un proveedor de grupo de identidades de la fuerza de trabajo para la integración de tu aplicación Okta mediante el protocolo OIDC, haz lo siguiente:

  1. Para obtener el ID de cliente de la integración de tu aplicación Okta, sigue estos pasos:

    1. Ve a la integración de la aplicación Okta.
    2. Haz clic en la pestaña General.
    3. Copia el contenido del campo Client ID (ID de cliente).
  2. Para crear un proveedor de grupos de identidades de Workforce de OIDC para el inicio de sesión basado en web, haz lo siguiente:

    gcloud

    Flujo de código

    En Okta, haz lo siguiente:

    1. En Autenticación de cliente, selecciona Secreto de cliente.

    2. En la tabla Secretos de cliente, busca el secreto y haz clic en Copiar.

    En Trusted Cloud, para crear un proveedor de OIDC que utilice el flujo de código de autorización para iniciar sesión en la Web, ejecuta el siguiente comando:

    gcloud iam workforce-pools providers create-oidc WORKFORCE_PROVIDER_ID \
        --workforce-pool=WORKFORCE_POOL_ID \
        --display-name="DISPLAY_NAME" \
        --description="DESCRIPTION" \
        --issuer-uri="ISSUER_URI" \
        --client-id="OIDC_CLIENT_ID" \
    --client-secret-value="OIDC_CLIENT_SECRET" \ --web-sso-response-type="code" \ --web-sso-assertion-claims-behavior="merge-user-info-over-id-token-claims" \ --web-sso-additional-scopes="WEB_SSO_ADDITIONAL_SCOPES" \ --attribute-mapping="ATTRIBUTE_MAPPING" \ --attribute-condition="ATTRIBUTE_CONDITION" \ --jwk-json-path="JWK_JSON_PATH" \ --detailed-audit-logging \ --location=global

    Haz los cambios siguientes:

    • WORKFORCE_PROVIDER_ID: ID único del proveedor de grupos de identidades de Workforce. El prefijo gcp- está reservado y no se puede usar en un ID de grupo de identidades de Workforce ni en un ID de proveedor de grupos de identidades de Workforce.
    • WORKFORCE_POOL_ID: el ID del grupo de identidades de Workforce al que conectar tu proveedor de identidades.
    • DISPLAY_NAME: nombre visible opcional para el proveedor. Por ejemplo, idp-eu-employees.
    • DESCRIPTION: descripción opcional del proveedor de mano de obra. Por ejemplo, IdP for Partner Example Organization employees.
    • ISSUER_URI: el URI del emisor de OIDC, en un formato de URI válido, que empieza por https; por ejemplo, https://example.com/oidc. Nota: Por motivos de seguridad, ISSUER_URI debe usar el esquema HTTPS.
    • OIDC_CLIENT_ID: el ID de cliente de OIDC registrado en tu proveedor de identidades de OIDC. El ID debe coincidir con la reclamación aud del JWT emitido por tu proveedor de identidades.
    • OIDC_CLIENT_SECRET: el secreto de cliente de OIDC.
    • WEB_SSO_ADDITIONAL_SCOPES: ámbitos adicionales opcionales que se envían al IdP de OIDC para el inicio de sesión basado en navegador de la consola (federado) o de la CLI de gcloud. Por ejemplo, groups para solicitar la reclamación de grupos de Okta si se usa el servidor de autorización de la organización de Okta.
    • ATTRIBUTE_MAPPING: una asignación de atributos. A continuación, se muestra un ejemplo de asignación de atributos:
      google.subject=assertion.sub,
      google.groups=assertion.group1,
      attribute.costcenter=assertion.costcenter
      En este ejemplo, se asignan los atributos subject, group1 y costcenter del proveedor de identidades en la aserción de OIDC a los atributos google.subject, google.groups y attribute.costcenter, respectivamente.
    • ATTRIBUTE_CONDITION: condición de atributo; por ejemplo, assertion.subject.endsWith('@example.com') cuando el valor de subject asignado anteriormente contiene una dirección de correo que termina en @example.com.
    • JWK_JSON_PATH: ruta opcional a las claves web JSON (JWK) de OIDC subidas localmente. Si no se proporciona este parámetro, Trusted Cloud se usa la ruta /.well-known/openid-configuration de tu IdP para obtener los JWKs que contienen las claves públicas. Para obtener más información sobre los JWKs de OIDC subidos localmente, consulta gestionar JWKs de OIDC.
    • La federación de identidades de Workforce registra información de auditoría detallada recibida de tu proveedor de identidades en Logging. Los registros de auditoría detallados pueden ayudarte a solucionar problemas con la configuración de tu proveedor de identidades de la plantilla. Para saber cómo solucionar problemas de asignación de atributos con registros de auditoría detallados, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta la página de precios de Google Cloud Observability.

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

    En la respuesta del comando, POOL_RESOURCE_NAME es el nombre del grupo. Por ejemplo, locations/global/workforcePools/enterprise-example-organization-employees.

    Flujo implícito

    Para crear un proveedor de OIDC que use el flujo implícito para iniciar sesión en la Web, ejecuta el siguiente comando:

    gcloud iam workforce-pools providers create-oidc WORKFORCE_PROVIDER_ID \
        --workforce-pool=WORKFORCE_POOL_ID \
        --display-name="DISPLAY_NAME" \
        --description="DESCRIPTION" \
        --issuer-uri="ISSUER_URI" \
        --client-id="OIDC_CLIENT_ID" \
        --web-sso-response-type="id-token" \
        --web-sso-assertion-claims-behavior="only-id-token-claims" \
        --web-sso-additional-scopes="WEB_SSO_ADDITIONAL_SCOPES" \
        --attribute-mapping="ATTRIBUTE_MAPPING" \
        --attribute-condition="ATTRIBUTE_CONDITION" \
        --jwk-json-path="JWK_JSON_PATH" \
        --detailed-audit-logging \
        --location=global
    

    Haz los cambios siguientes:

    • WORKFORCE_PROVIDER_ID: ID único del proveedor de grupos de identidades de Workforce. El prefijo gcp- está reservado y no se puede usar en un ID de grupo de identidades de Workforce ni en un ID de proveedor de grupos de identidades de Workforce.
    • WORKFORCE_POOL_ID: el ID del grupo de identidades de Workforce al que conectar tu proveedor de identidades.
    • DISPLAY_NAME: nombre visible opcional para el proveedor. Por ejemplo, idp-eu-employees.
    • DESCRIPTION: descripción opcional del proveedor de mano de obra. Por ejemplo, IdP for Partner Example Organization employees.
    • ISSUER_URI: el URI del emisor de OIDC, en un formato de URI válido, que empieza por https; por ejemplo, https://example.com/oidc. Nota: Por motivos de seguridad, ISSUER_URI debe usar el esquema HTTPS.
    • OIDC_CLIENT_ID: el ID de cliente de OIDC registrado en tu proveedor de identidades de OIDC. El ID debe coincidir con la reclamación aud del JWT emitido por tu proveedor de identidades.
    • WEB_SSO_ADDITIONAL_SCOPES: ámbitos adicionales opcionales que se envían al IdP de OIDC para el inicio de sesión basado en navegador de la consola (federado) o de la CLI de gcloud. Por ejemplo, groups para solicitar la reclamación de grupos de Okta si se usa el servidor de autorización de la organización de Okta.
    • ATTRIBUTE_MAPPING: una asignación de atributos. A continuación, se muestra un ejemplo de asignación de atributos:
      google.subject=assertion.sub,
      google.groups=assertion.group1,
      attribute.costcenter=assertion.costcenter
      En este ejemplo, se asignan los atributos subject, group1 y costcenter del proveedor de identidades en la aserción de OIDC a los atributos google.subject, google.groups y attribute.costcenter, respectivamente.
    • ATTRIBUTE_CONDITION: condición de atributo; por ejemplo, assertion.subject.endsWith('@example.com') cuando el valor de subject asignado anteriormente contiene una dirección de correo que termina en @example.com.
    • JWK_JSON_PATH: ruta opcional a las claves web JSON (JWK) de OIDC subidas localmente. Si no se proporciona este parámetro, Trusted Cloud se usa la ruta /.well-known/openid-configuration de tu IdP para obtener los JWKs que contienen las claves públicas. Para obtener más información sobre los JWKs de OIDC subidos localmente, consulta gestionar JWKs de OIDC.
    • La federación de identidades de Workforce registra información de auditoría detallada recibida de tu proveedor de identidades en Logging. Los registros de auditoría detallados pueden ayudarte a solucionar problemas con la configuración de tu proveedor de identidades de la plantilla. Para saber cómo solucionar problemas de asignación de atributos con registros de auditoría detallados, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta la página de precios de Google Cloud Observability.

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

    En la respuesta del comando, POOL_RESOURCE_NAME es el nombre del grupo. Por ejemplo, locations/global/workforcePools/enterprise-example-organization-employees.

    Consola

    Flujo de código

    1. En Okta, haz lo siguiente:

      1. En Autenticación de cliente, selecciona Secreto de cliente.

      2. En la tabla Secretos de cliente, busca el secreto y haz clic en Copiar.

    2. En la Trusted Cloud consola, para crear un proveedor de OIDC que utilice el flujo de código de autorización, haz lo siguiente:

      1. En la Trusted Cloud consola, ve a la página Grupos de identidades de la fuerza de trabajo:

        Ir a Grupos de identidades de Workforce

      2. En la tabla Grupos de identidades de Workforce, seleccione el grupo para el que quiera crear el proveedor.

      3. En la tabla Proveedores, haga clic en Añadir proveedor.

      4. En Seleccionar un protocolo, selecciona OpenID Connect (OIDC).

      5. En Crear un proveedor de grupos, haz lo siguiente:

        1. En Name (Nombre), escribe el nombre del proveedor.
        2. En Emisor (URL), introduzca el URI del emisor. El URI del emisor de OIDC debe tener un formato de URI válido y empezar por https. Por ejemplo, https://example.com/oidc.
        3. Introduce el ID de cliente, el ID de cliente de OIDC registrado en tu proveedor de identidades de OIDC. El ID debe coincidir con la reclamación aud del JWT emitido por tu proveedor de identidades.
        4. Para crear un proveedor habilitado, asegúrate de que la opción Proveedor habilitado esté activada.
        5. Haz clic en Continuar.
      6. En Tipo de flujo, haz lo siguiente: El tipo de flujo solo se usa en un flujo de inicio de sesión único basado en la Web.

        1. En Tipo de flujo, selecciona Código.
        2. En Secreto de cliente, introduce el secreto de cliente de tu proveedor de identidades.
        3. En Comportamiento de las reclamaciones de aserción, seleccione una de las siguientes opciones:

          • Información del usuario y token de ID
          • Solo token de ID
        4. Haz clic en Continuar.

      7. En Configurar proveedor, puede configurar una asignación de atributos y una condición de atributo. Para crear una asignación de atributos, sigue estos pasos. Puedes proporcionar el nombre del campo del proveedor de identidades o una expresión con formato CEL que devuelva una cadena.

        1. Obligatorio: en OIDC 1, introduce el asunto del proveedor de identidades. Por ejemplo: assertion.sub.

        2. Opcional: Para añadir más asignaciones de atributos, haz lo siguiente:

          1. Haz clic en Añadir asignación.
          2. En Google n, donde n es un número, introduce una de las teclas compatibles conTrusted Cloud.
          3. En el campo OIDC n correspondiente, introduce el nombre del campo específico del IdP que quieras asignar, en formato CEL.
        3. Para crear una condición de atributo, siga estos pasos:

          1. Haz clic en Añadir condición.
          2. En Attribute Conditions (Condiciones de atributo), introduzca una condición en formato CEL; por ejemplo, assertion.subject.endsWith('@example.com') cuando el valor de subject asignado anteriormente contenga una dirección de correo que termine en @example.com.
        4. Para activar el registro de auditoría detallado, en Registro detallado, haz clic en el interruptor Habilitar registro detallado de valores de atributos.

          La federación de identidades de Workforce registra información de auditoría detallada recibida de tu proveedor de identidades en Logging. Los registros de auditoría detallados pueden ayudarte a solucionar problemas con la configuración de tu proveedor de identidades de la plantilla. Para saber cómo solucionar problemas de asignación de atributos con registros de auditoría detallados, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta la página de precios de Google Cloud Observability.

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

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

    Flujo implícito

    1. En la consola de Trusted Cloud Trusted Cloud , haz lo siguiente:

      1. En la Trusted Cloud consola, ve a la página Grupos de identidades de la fuerza de trabajo:

        Ir a Grupos de identidades de Workforce

      2. En la tabla Grupos de identidades de Workforce, seleccione el grupo para el que quiera crear el proveedor.

      3. En la tabla Proveedores, haga clic en Añadir proveedor.

      4. En Seleccionar un protocolo, selecciona OpenID Connect (OIDC).

      5. En Crear un proveedor de grupos, haz lo siguiente:

        1. En Name (Nombre), escribe el nombre del proveedor.
        2. En Emisor (URL), introduzca el URI del emisor. El URI del emisor de OIDC debe tener un formato de URI válido y empezar por https. Por ejemplo, https://example.com/oidc.
        3. Introduce el ID de cliente, el ID de cliente de OIDC registrado en tu proveedor de identidades de OIDC. El ID debe coincidir con la reclamación aud del JWT emitido por tu proveedor de identidades.
        4. Para crear un proveedor habilitado, asegúrate de que la opción Proveedor habilitado esté activada.
        5. Haz clic en Continuar.
      6. En Tipo de flujo, haz lo siguiente: El tipo de flujo solo se usa en un flujo de inicio de sesión único basado en la Web.

        1. En Tipo de flujo, selecciona Token de ID.
        2. Haz clic en Continuar.
      7. En Configurar proveedor, puede configurar una asignación de atributos y una condición de atributo. Para crear una asignación de atributos, sigue estos pasos. Puedes proporcionar el nombre del campo del proveedor de identidades o una expresión con formato CEL que devuelva una cadena.

        1. Obligatorio: en OIDC 1, introduce el asunto del proveedor de identidades. Por ejemplo: assertion.sub.

        2. Opcional: Para añadir más asignaciones de atributos, haz lo siguiente:

          1. Haz clic en Añadir asignación.
          2. En Google n, donde n es un número, introduce una de las teclas compatibles conTrusted Cloud.
          3. En el campo OIDC n correspondiente, introduce el nombre del campo específico del IdP que quieras asignar, en formato CEL.
        3. Para crear una condición de atributo, siga estos pasos:

          1. Haz clic en Añadir condición.
          2. En Attribute Conditions (Condiciones de atributo), introduzca una condición en formato CEL; por ejemplo, assertion.subject.endsWith('@example.com') cuando el valor de subject asignado anteriormente contenga una dirección de correo que termine en @example.com.

        4. Para activar el registro de auditoría detallado, en Registro detallado, haz clic en el interruptor Habilitar registro detallado de valores de atributos.

          La federación de identidades de Workforce registra información de auditoría detallada recibida de tu proveedor de identidades en Logging. Los registros de auditoría detallados pueden ayudarte a solucionar problemas con la configuración de tu proveedor de identidades de la plantilla. Para saber cómo solucionar problemas de asignación de atributos con registros de auditoría detallados, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta la página de precios de Google Cloud Observability.

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

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

Crear un proveedor de grupos de identidades de empleados SAML

  1. En tu proveedor de identidades SAML, registra una nueva aplicación para la federación de identidades de Workforce. Trusted Cloud

  2. Define la audiencia de las aserciones SAML. Suele ser el campo SP Entity ID en la configuración de tu proveedor de identidades. Debe definirla en la siguiente URL:

    https://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
    
  3. Define la URL de redirección, también conocida como URL del servicio de consumidor de aserciones (ACS). Para definir la URL de redirección, busque el campo correspondiente en su proveedor de identidades SAML y haga una de las siguientes acciones:

    • Para configurar el inicio de sesión basado en navegador a través de la consola Trusted Cloud u otro método de inicio de sesión basado en navegador, introduce la siguiente URL:

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

      Haz los cambios siguientes:

      • WORKFORCE_POOL_ID: el ID del grupo de identidades de Workforce

      • WORKFORCE_PROVIDER_ID: el ID del proveedor de grupos de identidades de Workforce que crearás más adelante en este documento.

    • Para configurar el inicio de sesión programático a través de tu proveedor de identidades, introduce la siguiente URL:

      localhost
      

    Consulta más información sobre cómo configurar el inicio de sesión en la consola en el artículo Configurar el acceso de los usuarios a la consola.

  4. En Trusted Cloud, crea un proveedor de grupos de identidades de Workforce SAML con el documento de metadatos SAML de tu IdP. Puedes descargar el documento XML de metadatos de SAML de tu proveedor de identidades. El documento debe incluir al menos lo siguiente:

    • Un ID de entidad SAML de tu proveedor de identidades.
    • La URL de inicio de sesión único de tu proveedor de identidades.
    • Al menos una clave pública de firma. Para obtener más información sobre las claves de firma, consulta los requisitos de las claves más adelante en esta guía.

gcloud

Para crear un proveedor de grupos de identidades de Workforce para tu integración de la aplicación Okta mediante el protocolo SAML, haz lo siguiente:

  1. Para guardar los metadatos de SAML de tu aplicación de Okta, haz lo siguiente:

    1. Ve a tu aplicación Okta.
    2. Haz clic en la pestaña Iniciar sesión.
    3. En la sección SAML Signing Certificates (Certificados de firma SAML), haga clic en Actions > View IdP metadata (Acciones > Ver metadatos de IdP) del certificado activo.
    4. En la página que se abre, copia los metadatos XML.
    5. Guarda los metadatos como un archivo XML local.
  2. Para crear un proveedor de personal para tu aplicación de Okta, ejecuta el siguiente comando:

    gcloud iam workforce-pools providers create-saml WORKFORCE_PROVIDER_ID \
        --workforce-pool="WORKFORCE_POOL_ID" \
        --attribute-mapping="ATTRIBUTE_MAPPING" \
        --attribute-condition="ATTRIBUTE_CONDITION" \
        --idp-metadata-path="XML_METADATA_PATH" \
        --detailed-audit-logging \
        --location="global"
    

    Haz los cambios siguientes:

    • WORKFORCE_PROVIDER_ID: el ID del proveedor de la fuerza de trabajo que has creado anteriormente en esta guía.
    • WORKFORCE_POOL_ID: el ID del grupo de identidades de Workforce que has creado anteriormente en esta guía.
    • ATTRIBUTE_MAPPING: una asignación de atributos, por ejemplo:

      google.subject=assertion.subject,
      google.groups=assertion.attributes['https://example.com/aliases'],
      attribute.costcenter=assertion.attributes.costcenter[0]
      En este ejemplo, se asignan los atributos del proveedor de identidades assertion.subject, assertion.attributes['https://example.com/aliases'] y assertion.attributes.costcenter[0] a los atributos Trusted Cloudgoogle.subject, google.groups y google.costcenter, respectivamente.

    • ATTRIBUTE_CONDITION: Condición del atributo opcional. Por ejemplo, para limitar el atributo ipaddr a un intervalo de IPs determinado, puedes definir la condición assertion.attributes.ipaddr.startsWith('98.11.12.'). Esta condición de ejemplo asegura que solo los usuarios con una dirección IP que empiece por 98.11.12. puedan iniciar sesión con este proveedor de la plantilla.

    • XML_METADATA_PATH: ruta al archivo de metadatos en formato XML de la aplicación de Okta que has creado anteriormente en esta guía.

    El prefijo gcp- está reservado y no se puede usar en un ID de grupo de identidades de Workforce ni en un ID de proveedor de grupos de identidades de Workforce.

    • La federación de identidades de Workforce registra información de auditoría detallada recibida de tu proveedor de identidades en Logging. Los registros de auditoría detallados pueden ayudarte a solucionar problemas con la configuración de tu proveedor de identidades de la plantilla. Para saber cómo solucionar problemas de asignación de atributos con registros de auditoría detallados, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta la página de precios de Google Cloud Observability.

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

    Opcional: Aceptar aserciones SAML cifradas de tu proveedor de identidades

    Para habilitar tu proveedor de identidades SAML 2.0 para que genere aserciones SAML cifradas que pueda aceptar la federación de identidades de trabajo, haz lo siguiente:

    • En la federación de identidades para los trabajadores, haz lo siguiente:
      • Crea un par de claves asimétricas para tu proveedor de grupos de identidades de Workforce.
      • Descarga un archivo de certificado que contenga la clave pública.
      • Configura tu proveedor de identidades SAML para que use la clave pública para cifrar las aserciones SAML que emita.
    • En tu proveedor de identidades, haz lo siguiente:
      • Habilita el cifrado de aserciones, también conocido como cifrado de tokens.
      • Sube la clave pública que has creado en la federación de identidades para los trabajadores.
      • Confirma que tu IdP genera aserciones SAML cifradas.
    Ten en cuenta que, aunque se hayan configurado claves de proveedor de cifrado SAML, la federación de identidades de Workforce puede seguir procesando una aserción de texto sin cifrar.

    Crear claves de cifrado de aserciones SAML de federación de identidades para los trabajadores

    En esta sección se explica cómo crear un par de claves asimétricas que permita a la federación de identidades de empleados aceptar aserciones SAML cifradas.

    Trusted Cloud by S3NS usa la clave privada para descifrar las aserciones SAML que emite tu proveedor de identidades. Para crear un par de claves asimétricas que se pueda usar con el cifrado SAML, ejecuta el siguiente comando. Para obtener más información, consulta Algoritmos de cifrado SAML admitidos.

    gcloud iam workforce-pools providers keys create KEY_ID \
        --workforce-pool WORKFORCE_POOL_ID \
        --provider WORKFORCE_PROVIDER_ID \
        --location global \
        --use encryption \
        --spec KEY_SPECIFICATION

    Haz los cambios siguientes:

    • KEY_ID: el nombre de la clave que elijas
    • WORKFORCE_POOL_ID: el ID del grupo
    • WORKFORCE_PROVIDER_ID: el ID del proveedor de grupos de identidades de Workforce
    • KEY_SPECIFICATION: la especificación de la clave, que puede ser rsa-2048, rsa-3072 o rsa-4096.

    Una vez creado el par de claves, ejecuta el siguiente comando para descargar la clave pública en un archivo de certificado. Solo la federación de identidades para los trabajadores tiene acceso a la clave privada.

    gcloud iam workforce-pools providers keys describe KEY_ID \
        --workforce-pool WORKFORCE_POOL_ID \
        --provider WORKFORCE_PROVIDER_ID \
        --location global \
        --format "value(keyData.key)" \
        > CERTIFICATE_PATH

    Haz los cambios siguientes:

    • KEY_ID: el nombre de la clave
    • WORKFORCE_POOL_ID: el ID del grupo
    • WORKFORCE_PROVIDER_ID: el ID del proveedor de grupos de identidades de Workforce
    • CERTIFICATE_PATH: la ruta en la que se escribirá el certificado (por ejemplo, saml-certificate.cer o saml-certificate.pem).

    Configurar un IdP compatible con SAML 2.0 para que emita aserciones SAML cifradas

    Para configurar Okta para cifrar aserciones SAML, haz lo siguiente:

    • Ve al panel de control de Okta e inicia sesión.
    • Ve a Aplicaciones>Aplicaciones.
    • Haz clic en tu aplicación.
    • En la pestaña General (General), en la sección SAML Settings (Configuración de SAML), haz clic en Edit (Editar).
    • Haz clic en Siguiente para ver la configuración de SAML.
    • Haz clic en Mostrar configuración avanzada.
    • En SAML Settings (Configuración de SAML), haz lo siguiente:
      • En Respuesta (opción preferida) o Firma de aserción, selecciona Signed.
      • En Signature Algorithm (Algoritmo de firma) y Digest Algorithm (Algoritmo de resumen), selecciona cualquier opción.
      • Establece los valores siguientes:
        • Cifrado de aserciones: cifrado.
        • Algoritmo de cifrado: el que elijas.
        • Encryption Certificate (Certificado de cifrado): sube el archivo de certificado que has generado anteriormente en esta guía.
    • Para guardar la configuración, haz clic en Siguiente y, a continuación, en Finalizar.

    Una vez que haya configurado su proveedor de identidades para cifrar las aserciones SAML, le recomendamos que compruebe que las aserciones que genera estén cifradas. Aunque se haya configurado el cifrado de aserciones SAML, la federación de identidades de los trabajadores puede seguir procesando aserciones de texto sin cifrar.

    Eliminar claves de cifrado de federación de identidades de los trabajadores

    Para eliminar las claves de cifrado SAML, ejecuta el siguiente comando:
      gcloud iam workforce-pools providers keys delete KEY_ID \
          --workforce-pool WORKFORCE_POOL_ID \
          --provider WORKFORCE_PROVIDER_ID \
          --location global

    Haz los cambios siguientes:

    • KEY_ID: el nombre de la clave
    • WORKFORCE_POOL_ID: el ID del grupo
    • WORKFORCE_PROVIDER_ID: el ID del proveedor de grupos de identidades de Workforce

    Algoritmos de cifrado SAML admitidos

    La federación de identidades de Workforce admite los siguientes algoritmos de transporte clave:

    La federación de identidades de Workforce admite los siguientes algoritmos de cifrado por bloques:

Consola

Para configurar el proveedor de SAML mediante la consola Trusted Cloud , haz lo siguiente:

  1. En la Trusted Cloud consola, ve a la página Grupos de identidades de la fuerza de trabajo:

    Ir a Grupos de identidades de Workforce

  2. En la tabla Grupos de identidades de Workforce, seleccione el grupo en el que quiera crear el proveedor.

  3. En la tabla Proveedores, haga clic en Añadir proveedor.

  4. En Select a protocol (Seleccionar un protocolo), selecciona SAML.

  5. En Crear un proveedor de grupos, haz lo siguiente:

    1. En Name (Nombre), escribe el nombre del proveedor.

    2. Opcional: En Descripción, escribe una descripción del proveedor.

    3. En Archivo de metadatos del IdP (XML), selecciona el archivo XML de metadatos que has generado anteriormente en esta guía.

    4. Comprueba que la opción Proveedor habilitado esté habilitada.

    5. Haz clic en Continuar.

  6. En Configurar proveedor, haz lo siguiente:

    1. En Asignación de atributos, introduce una expresión CEL para google.subject.

    2. Opcional: Para introducir otras asignaciones, haz clic en Añadir asignación e introduce otras asignaciones. Por ejemplo:

      google.subject=assertion.subject,
      google.groups=assertion.attributes['https://example.com/aliases'],
      attribute.costcenter=assertion.attributes.costcenter[0]
      En este ejemplo, se asignan los atributos del proveedor de identidades assertion.subject, assertion.attributes['https://example.com/aliases'] y assertion.attributes.costcenter[0] a los atributos Trusted Cloudgoogle.subject, google.groups y google.costcenter, respectivamente.

    3. Opcional: Para añadir una condición de atributo, haga clic en Añadir condición e introduzca una expresión CEL que represente una condición de atributo. Por ejemplo, para limitar el atributo ipaddr a un intervalo de IPs determinado, puedes definir la condición assertion.attributes.ipaddr.startsWith('98.11.12.'). Esta condición de ejemplo asegura que solo los usuarios con una dirección IP que empiece por 98.11.12. puedan iniciar sesión con este proveedor de la plantilla.

    4. Haz clic en Continuar.

    5. Para activar el registro de auditoría detallado, en Registro detallado, haz clic en el interruptor Habilitar registro detallado de valores de atributos.

      La federación de identidades de Workforce registra información de auditoría detallada recibida de tu proveedor de identidades en Logging. Los registros de auditoría detallados pueden ayudarte a solucionar problemas con la configuración de tu proveedor de identidades de la plantilla. Para saber cómo solucionar problemas de asignación de atributos con registros de auditoría detallados, consulta Errores generales de asignación de atributos. Para obtener información sobre los precios de Logging, consulta la página de precios de Google Cloud Observability.

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

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

Gestionar el acceso a los recursos de Trusted Cloud

En esta sección se muestra un ejemplo de cómo gestionar el acceso a losTrusted Cloud recursos por parte de los usuarios de Workforce Identity Federation.

En este ejemplo, se asigna un rol de Gestión de Identidades y Accesos (IAM) a un proyecto de ejemplo. Los usuarios podrán iniciar sesión y usar este proyecto para acceder a los productos deTrusted Cloud .

Puedes gestionar los roles de gestión de identidades y accesos de identidades individuales, grupos de identidades o todo un grupo. Para obtener más información, consulta Representar a los usuarios de un grupo de identidades de la fuerza de trabajo en políticas de IAM.

Para una sola identidad

Para asignar el rol Administrador de Storage (roles/storage.admin) a una sola identidad del proyecto TEST_PROJECT_ID, ejecuta el siguiente comando:

gcloud projects add-iam-policy-binding TEST_PROJECT_ID \
    --role="roles/storage.admin" \
    --member="principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/SUBJECT_VALUE"

Haz los cambios siguientes:

  • TEST_PROJECT_ID: ID del proyecto
  • WORKFORCE_POOL_ID: el ID del grupo de identidades de Workforce
  • SUBJECT_VALUE: la identidad del usuario

Usar el atributo de departamento asignado

Para asignar el rol Administrador de Storage (roles/storage.admin) a todas las identidades de un departamento específico del proyecto TEST_PROJECT_ID, ejecuta el siguiente comando:

gcloud projects add-iam-policy-binding TEST_PROJECT_ID \
    --role="roles/storage.admin" \
    --member="principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/attribute.department/DEPARTMENT_VALUE"

Haz los cambios siguientes:

  • TEST_PROJECT_ID: ID del proyecto
  • WORKFORCE_POOL_ID: el ID del grupo de identidades de Workforce
  • DEPARTMENT_VALUE: el valor de attribute.department asignado

Usar grupos asignados

Para asignar el rol Administrador de Storage (roles/storage.admin) a todas las identidades de un grupo específico del proyecto TEST_PROJECT_ID, ejecuta el siguiente comando:

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

Haz los cambios siguientes:

  • TEST_PROJECT_ID: ID del proyecto
  • WORKFORCE_POOL_ID: el ID del grupo de identidades de Workforce
  • GROUP_ID: un grupo en la reclamación google.groups mapeada.

Iniciar sesión y probar el acceso

En esta sección, iniciará sesión como usuario de un grupo de identidades de la fuerza de trabajo y comprobará que tiene acceso a un producto de Trusted Cloud .

Iniciar sesión

En esta sección se explica cómo iniciar sesión como usuario federado y acceder a los recursos deTrusted Cloud by S3NS .

Inicio de sesión basado en navegador de la CLI de gcloud

Para iniciar sesión en gcloud CLI mediante un flujo de inicio de sesión basado en navegador, haz lo siguiente:

Crear un archivo de configuración

Para crear el archivo de configuración de inicio de sesión, ejecuta el siguiente comando. También puedes activar el archivo como predeterminado para gcloud CLI añadiendo la marca --activate. Después, puedes ejecutar gcloud auth login sin especificar la ruta del archivo de configuración cada vez.

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

Haz los cambios siguientes:

  • WORKFORCE_POOL_ID: el ID del grupo de trabajadores
  • PROVIDER_ID: el ID del proveedor
  • LOGIN_CONFIG_FILE_PATH: la ruta a un archivo de configuración que especifiques (por ejemplo, login.json

El archivo contiene los endpoints que usa la CLI de gcloud para habilitar el flujo de autenticación basado en el navegador y definir la audiencia en el IdP que se configuró en el proveedor del grupo de identidades de Workforce. El archivo no contiene información confidencial.

El resultado es similar al siguiente:

{
  "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.s3nscloud.fr/authorize",
  "token_url": "https://sts.s3nsapis.fr/v1/oauthtoken",
  "token_info_url": "https://sts.s3nsapis.fr/v1/introspect",
}

Para evitar que gcloud auth login use este archivo de configuración automáticamente, puedes anularlo ejecutando gcloud config unset auth/login_config_file.

Iniciar sesión con la autenticación basada en navegador

Para autenticarte mediante la autenticación de inicio de sesión basada en navegador, puedes usar uno de los siguientes métodos:

  • Si usaste la marca --activate al crear el archivo de configuración o si activaste el archivo de configuración con gcloud config set auth/login_config_file, la CLI de gcloud usará el archivo de configuración automáticamente:

    gcloud auth login
  • Para iniciar sesión especificando la ubicación del archivo de configuración, ejecuta el siguiente comando:

    gcloud auth login --login-config=LOGIN_CONFIG_FILE_PATH
  • Para usar una variable de entorno para especificar la ubicación del archivo de configuración, asigna a CLOUDSDK_AUTH_LOGIN_CONFIG_FILE la ruta de configuración.

Inhabilitar el inicio de sesión basado en el navegador

Para dejar de usar el archivo de configuración de inicio de sesión, haz lo siguiente:

  • Si usaste la marca --activate al crear el archivo de configuración o si activaste el archivo de configuración con gcloud config set auth/login_config_file, debes ejecutar el siguiente comando para desactivarlo:

    gcloud config unset auth/login_config_file
  • Borra la variable de entorno CLOUDSDK_AUTH_LOGIN_CONFIG_FILE si está definida.

Inicio de sesión sin interfaz gráfica de usuario de la CLI de gcloud

Para iniciar sesión en gcloud CLI mediante un flujo sin interfaz gráfica, haz lo siguiente:

OIDC

  1. Inicia la sesión de un usuario en tu aplicación de Okta y obtén el token OIDC de Okta.

  2. Guarda el token de OIDC devuelto por Okta en una ubicación segura de tu ordenador local.

  3. Para generar un archivo de configuración como el del ejemplo que se muestra más adelante en este paso, 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:id_token" \
        --credential-source-file="PATH_TO_OIDC_ID_TOKEN" \
        --workforce-pool-user-project="WORKFORCE_POOL_USER_PROJECT" \
        --output-file="config.json"
    

Haz los cambios siguientes:

  • WORKFORCE_POOL_ID: el ID del grupo de identidades de Workforce
  • WORKFORCE_PROVIDER_ID: el ID del proveedor
  • PATH_TO_OIDC_TOKEN: la ruta al archivo de credenciales del proveedor de identidades de OIDC
  • WORKFORCE_POOL_USER_PROJECT: el número de proyecto asociado al proyecto de usuario de grupos de trabajadores

La cuenta principal debe tener el permiso serviceusage.services.use en este proyecto.

Cuando ejecutes el comando, se generará un archivo de configuración de proveedor de identidades de OIDC con un formato 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: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_FILE"
  }
}

SAML

  1. Inicia la sesión de un usuario en tu aplicación de Okta y obtén la respuesta SAML de Okta.

  2. Guarda la respuesta SAML devuelta por Okta en una ubicación segura de tu equipo local y, a continuación, almacena la ruta de la siguiente manera:

    SAML_ASSERTION_PATH=SAML_ASSERTION_PATH
    
  3. Para generar un archivo de configuración, 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"
    

    Haz los cambios siguientes:

    • WORKFORCE_PROVIDER_ID: el ID de la plantilla que has creado anteriormente en esta guía.
    • WORKFORCE_POOL_ID: el ID del grupo de identidades de Workforce que has creado anteriormente en esta guía.
    • SAML_ASSERTION_PATH: la ruta del archivo de aserción SAML.
    • PROJECT_ID: el ID del proyecto

    El archivo de configuración que se genera tiene un aspecto 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"
    }
    

Para iniciar sesión en gcloud mediante el intercambio de tokens, ejecuta el siguiente comando:

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

gcloud y, a continuación, intercambia de forma transparente tus credenciales de Okta por tokens de acceso temporales,Trusted Cloud lo que te permite hacer otras gcloud llamadas a Trusted Cloud.

Verá 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].

Para ver una lista de las cuentas con credenciales y la cuenta activa, ejecuta el siguiente comando:

gcloud auth list

Inicio de sesión en la consola (federado)

Para iniciar sesión en la consola de federación de trabajadores de Identity, también conocida como consola (federada), sigue estos pasos: Trusted Cloud by S3NS

  1. Ve a la página de inicio de sesión de la consola (federada).

    Ir a la consola (federada)

  2. Introduzca el nombre del proveedor con el siguiente formato:
    locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
    1. Introduce las credenciales de usuario en la integración de la aplicación Okta si se te solicita.

    Si inicias un inicio de sesión iniciado por el proveedor de identidades, usa la siguiente URL en SAML Settings (Configuración de SAML) para el parámetro anidado Default RelayState (RelayState predeterminado): https://console.cloud.s3nscloud.fr/.

Probar acceso

Ahora tienes acceso a los servicios de Trusted Cloud que admiten la federación de identidades de Workforce y a los que se te ha concedido acceso. En una sección anterior de esta guía, has asignado el rol Administrador de Storage (roles/storage.admin) a todas las identidades de un departamento específico del proyecto TEST_PROJECT_ID. Ahora puedes comprobar que tienes acceso consultando los segmentos de Cloud Storage.

CLI de gcloud

Para enumerar los segmentos y objetos de Cloud Storage del proyecto al que tienes acceso, ejecuta el siguiente comando:

gcloud storage ls --project="TEST_PROJECT_ID"

El principal debe tener el permiso serviceusage.services.use en el proyecto especificado.

Consola (federada)

Para enumerar los segmentos de Cloud Storage con la consola (federada), haz lo siguiente:

  • Ve a la página de Cloud Storage.
  • Verifica que puedes ver la lista de los segmentos que ya tienes en TEST_PROJECT_ID.

Eliminar usuarios

Workforce Identity Federation crea metadatos y recursos de usuario para las identidades de usuario federadas. Si decides eliminar usuarios en tu proveedor de identidades, también debes eliminar explícitamente estos recursos en Trusted Cloud. Para ello, consulte Eliminar usuarios de la federación de identidades de la plantilla y sus datos.

Es posible que veas que los recursos siguen asociados a un usuario que se ha eliminado. Esto se debe a que la eliminación de los metadatos y los recursos de los usuarios requiere una operación de larga duración. Después de iniciar la eliminación de la identidad de un usuario, los procesos que haya iniciado antes de la eliminación pueden seguir ejecutándose hasta que se completen o se cancelen.

Siguientes pasos