Conectarse a un proveedor de identidades

En esta página se explica cómo conectar Google Distributed Cloud (GDC) air-gapped con el proveedor de identidades (IdP) de tu organización. Un IdP es un sistema que gestiona y protege de forma centralizada las identidades de los usuarios, y proporciona servicios de autenticación. Al conectarse a un proveedor de identidades, los usuarios pueden acceder a GDC con las credenciales de su organización sin tener que crear ni gestionar cuentas independientes en GDC. Este proceso garantiza una experiencia de inicio de sesión fluida y segura. Como un IdP es un recurso global, los usuarios pueden acceder a GDC a través del mismo IdP independientemente de la zona en la que trabajen.

Esta página está dirigida a audiencias que forman parte del grupo de administradores de la plataforma, como administradores de TI o ingenieros de seguridad, que quieren conectarse a un proveedor de identidades. Para obtener más información, consulta Audiencias de la documentación aislada de GDC.

Puede conectarse a un proveedor de identidades que ya tenga mediante una de las siguientes opciones:

Antes de empezar

Antes de conectarte a un proveedor de identidades, asegúrate de que la configuración inicial se ha completado y de que tienes los permisos necesarios.

Configuración inicial de la conexión del proveedor de identidades

Un miembro del grupo de operadores de infraestructura de tu organización debe configurar la conexión inicial del IdP para que los usuarios puedan acceder a los clústeres o los paneles de control de GDC.

Para ello, deben abrir una incidencia en el sistema de incidencias y proporcionar la siguiente información sobre el proveedor de identidades:

  • Número de servidores y sus tipos.
  • Cantidad de almacenamiento en bloques en TB.
  • Cantidad de almacenamiento de objetos en TB.
  • Parámetros obligatorios de OIDC:
    • clientID el ID de la aplicación cliente que envía solicitudes de autenticación al proveedor de OpenID.
    • clientSecret el secreto que solo conocen la aplicación y el proveedor de OpenID.
    • issuerURL la URL a la que se envían las solicitudes de autorización del proveedor de OpenID.
    • scopes: permisos adicionales que se enviarán al proveedor de OpenID.
    • userclaim: la reclamación del JSON Web Token (JWT) que se va a usar como nombre de usuario.
    • certificateAuthorityData una cadena codificada en Base64 del certificado codificado en PEM del proveedor de OIDC.
  • Parámetros obligatorios para los proveedores de SAML:
    • idpCertificateDataList los certificados del IdP para verificar la respuesta SAML. Estos certificados deben estar codificados en Base64 estándar y tener formato PEM. Solo se admiten dos certificados como máximo para facilitar la rotación de certificados del IdP.
    • idpEntityID el ID de entidad SAML del proveedor de SAML, especificado en formato URI. Ejemplo: https://www.idp.com/saml.
    • idpSingleSignOnURI el URI del punto final de inicio de sesión único del proveedor de SAML. Ejemplo: https://www.idp.com/saml/sso.
  • Nombre de usuario o grupo de nombres de usuario de los administradores iniciales.

Permisos obligatorios

Para obtener los permisos que necesitas para conectar un proveedor de identidades, sigue estos pasos:

  • Pídele al administrador de gestión de identidades y accesos de tu organización que te conceda el rol de administrador de federación de IdPs (idp-federation-admin).
  • Asegúrate de que el administrador inicial que especifiques al conectar el proveedor de identidades tenga el rol de administrador de gestión de identidades y accesos de la organización (organization-iam-admin).

Conectarse a un proveedor de identidades

Para conectar el proveedor de identidades, debes tener un único ID de cliente y un secreto de tu proveedor de identidades. Puedes conectarte a un proveedor de OIDC o de SAML.

Conectarse a un proveedor de OIDC

Para conectarte a un proveedor de OIDC, sigue estos pasos:

Consola

  1. Inicia sesión en la consola de GDC. En el siguiente ejemplo se muestra la consola después de iniciar sesión en una organización llamada org-1: Página de bienvenida de la consola con enlaces de acceso rápido a tareas habituales
  2. En el menú de navegación, haz clic en Identidad y acceso > Identidad.
  3. Haz clic en Add Identity Provider (Añadir proveedor de identidades).
  4. En la sección Configurar proveedor de identidades, sigue estos pasos:

    1. En el menú desplegable Proveedor de identidad, selecciona OpenID Connect (OIDC).
    2. Introduce un nombre del proveedor de identidades.
    3. En el campo URI del emisor, introduce la URL a la que se envían las solicitudes de autorización a tu proveedor de identidades. El servidor de la API de Kubernetes usa esta URL para descubrir las claves públicas y verificar los tokens. La URL debe usar HTTPS.
    4. En el campo Client ID (ID de cliente), introduce el ID de la aplicación cliente que envía solicitudes de autenticación al proveedor de identidades.
    5. En el campo Secreto de cliente, introduce el secreto de cliente, que es un secreto compartido entre tu proveedor de identidades y Distributed Cloud.
    6. Opcional: En el campo Prefijo del proveedor de identidades, introduce un prefijo. El prefijo se añade al principio de las reclamaciones de usuario y de grupo. Los prefijos se usan para distinguir entre diferentes configuraciones de proveedores de identidades. Por ejemplo, si defines el prefijo myidp, una reclamación de usuario podría ser myid-pusername@example.com y una reclamación de grupo podría ser myid-pgroup@example.com. El prefijo también debe incluirse al asignar permisos de control de acceso basado en roles (RBAC) a los grupos.

    7. Opcional: En la sección Cifrado, selecciona Habilitar tokens de cifrado.

      Para habilitar los tokens de cifrado, pide al administrador de gestión de identidades y accesos de tu organización que te conceda el rol de administrador de federación de IdPs (idp-federation-admin).

      1. En el campo ID de clave, introduce el ID de tu clave. El ID de clave identifica la clave pública de un token de cifrado web JSON (JWE). Tu proveedor de OIDC configura y aprovisiona un ID de clave.
      2. En el campo Clave de descifrado, introduce la clave de descifrado en formato PEM. La clave de descifrado es una clave asimétrica que se usa para descifrar tokens. Tu proveedor de OIDC configura y proporciona una clave de descifrado.
    8. Haz clic en Siguiente.

  5. En la sección Configurar atributos, sigue estos pasos:

    1. En el campo Autoridad de certificación del proveedor de OIDC, introduce un certificado codificado en PEM y en Base64 del proveedor de identidades. Para obtener más información, consulta Privacy-Enhanced Mail en Wikipedia.
      1. Para crear la cadena, codifica el certificado, incluidos los encabezados, en base64.
      2. Incluye la cadena resultante en una sola línea. Ejemplo: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC...k1JSUN2RENDQWFT==
    2. En el campo Group Claim (Reclamación de grupo), introduce el nombre de la reclamación en el token del proveedor de identidades que contiene la información del grupo del usuario.
    3. En el campo Reclamación de usuario, introduzca la reclamación para identificar a cada usuario. La reclamación predeterminada de muchos proveedores es sub. Puedes elegir otras reclamaciones, como email o name, en función del proveedor de identidad. Las reclamaciones que no sean email tienen el prefijo de la URL del emisor para evitar conflictos de nombres.
    4. Opcional: En la sección Atributos personalizados, haga clic en Añadir par e introduzca pares clave-valor para añadir información adicional sobre un usuario, como su departamento o la URL de su imagen de perfil.
    5. Si tu proveedor de identidades requiere ámbitos adicionales, en el campo Scopes (Ámbitos), introduce los ámbitos separados por comas que se enviarán al proveedor de identidades.
    6. En la sección Extra parameters (Parámetros adicionales), introduce los pares clave-valor adicionales (separados por comas) que requiera tu proveedor de identidades. Si vas a autorizar un grupo, introduce resource=token-groups-claim.
    7. Haz clic en Siguiente.
  6. En la sección Especificar administradores iniciales, sigue estos pasos:

    1. Elige si quieres añadir usuarios concretos o grupos como administradores iniciales.
    2. En el campo Nombre de usuario o alias de grupo, introduce la dirección de correo del usuario o del grupo para acceder a la organización. Si eres el administrador, introduce tu dirección de correo, por ejemplo, kiran@example.com. El prefijo se añade antes del nombre de usuario, como myidp-kiran@example.com.
    3. Haz clic en Siguiente.
  7. Revisa las opciones que has seleccionado y haz clic en Configurar.

El nuevo perfil de proveedor de identidades está disponible en la lista de perfiles de identidad.

API

Para conectar tu proveedor de identidades con tu organización, crea el recurso personalizado global IdentityProviderConfig.

  1. Crea un archivo YAML de IdentityProviderConfigrecurso personalizadopa-idp-oidc.yaml, como el siguiente:

    apiVersion: iam.global.gdc.goog/v1
    kind: IdentityProviderConfig
    metadata:
      name: pa-idp-oidc
      namespace: platform
    spec:
      oidc:
        certificateAuthorityData: "IDP_BASE64_ENCODED_CERTIFICATE"
        clientID: IDP_CLIENT_ID
        clientSecret: IDP_CLIENT_SECRET
        groupPrefix: IDP_GROUP_PREFIX
        groupsClaim: IDP_GROUP_CLAIM
        issuerURI: IDP_ISSUER_URI
        scopes: openid email profile
        userClaim: IDP_USER_CLAIM
        userPrefix: IDP_USER_PREFIX
    

    Sustituye las siguientes variables:

    • IDP_BASE64_ENCODED_CERTIFICATE: el certificado codificado en base64 del IdP.
    • IDP_CLIENT_ID: el ID de cliente del IdP.
    • IDP_CLIENT_SECRET: el secreto de cliente del IdP.
    • IDP_GROUP_PREFIX: el prefijo de los grupos del IdP.
    • IDP_GROUP_CLAIM: el nombre de la reclamación en el token de proveedor de identidades que agrupa la información.
    • IDP_ISSUER_URI: el URI del emisor del IdP.
    • IDP_USER_CLAIM: el nombre de la reclamación en el token del proveedor de identidades del usuario.
    • IDP_USER_PREFIX: prefijo del proveedor de identidades del usuario.
  2. Aplica el recurso personalizado IdentityProviderConfig al servidor de la API global:

    kubectl --kubeconfig GLOBAL_API_SERVER_KUBECONFIG apply -f pa-idp-oidc.yaml
    

    Sustituye la variable GLOBAL_API_SERVER_KUBECONFIG por la ruta al archivo kubeconfig del servidor de la API global.

Conectarse a un proveedor de SAML

Para conectarse a un proveedor de SAML, siga estos pasos:

Consola

  1. Inicia sesión en la consola de GDC. En el siguiente ejemplo se muestra la consola después de iniciar sesión en una organización llamada org-1: Página de bienvenida de la consola con enlaces de acceso rápido a tareas habituales
  2. En el menú de navegación, haz clic en Identidad y acceso > Identidad.
  3. Haz clic en Add Identity Provider (Añadir proveedor de identidades).
  4. En la sección Configurar proveedor de identidades, sigue estos pasos:

    1. En el menú desplegable Proveedor de identidades, selecciona Lenguaje de marcado para confirmaciones de seguridad (SAML).
    2. Introduce un nombre del proveedor de identidades.
    3. En el campo Identity ID (ID de identidad), introduce el ID de la aplicación cliente que envía solicitudes de autenticación al proveedor de identidades.
    4. En el campo URI de SSO, introduce la URL del endpoint de inicio de sesión único del proveedor. Por ejemplo: https://www.idp.com/saml/sso.
    5. En el campo Prefijo del proveedor de identidades, introduce un prefijo. El prefijo se añade al principio de las reclamaciones de usuarios y grupos. Los prefijos distinguen entre diferentes configuraciones de proveedores de identidades. Por ejemplo, si define el prefijo myidp, una reclamación de usuario podría mostrarse como myidp-username@example.com y una reclamación de grupo, como myidp-group@example.com. También debe incluir el prefijo al asignar permisos de RBAC a grupos.

    6. Para mejorar la seguridad, configura tu proveedor de SAML para que emita aserciones con una duración de entre 5 y 10 minutos. Esta opción se puede configurar en los ajustes de tu proveedor de SAML.

    7. Opcional: En la sección Aserciones SAML, selecciona Habilitar cifrado de aserciones SAML.

      Para habilitar las aserciones SAML cifradas, pide al administrador de gestión de identidades y accesos de tu organización que te conceda el rol de administrador de federación de IdPs (idp-federation-admin).

      1. En el campo Encryption assertion certificate (Certificado de aserción de cifrado), introduce tu certificado de cifrado en formato PEM. Obtienes el certificado de cifrado de tu proveedor de SAML.
      2. En el campo Clave de aserción de cifrado, introduce tu clave privada. Recibirás la clave de descifrado después de generar el proveedor de SAML.
    8. Opcional: En la sección SAML Signed Requests (Solicitudes de SAML firmadas), selecciona Enable signed SAML requests (Habilitar solicitudes de SAML firmadas).

      1. En el campo Signing certificate (Certificado de firma), introduce tu certificado de firma en formato de archivo PEM. Tu proveedor de SAML emite un certificado de firma.
      2. En el campo Clave de firma, introduce tu clave de firma en formato PEM. Tu proveedor de SAML configura y genera una clave de firma.
    9. Haz clic en Siguiente.

  5. En la página Configurar atributos, sigue estos pasos:

    1. En el campo IDP certificate (Certificado de IdP), introduce un certificado codificado en PEM y en Base64 para el proveedor de identidades. Para obtener más información, consulta Privacy-Enhanced Mail en Wikipedia.
      1. Para crear la cadena, codifica el certificado, incluidos los encabezados, en base64.
      2. Incluye la cadena resultante en una sola línea. Por ejemplo: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC...k1JSUN2RENDQWFT==.
    2. Introduce los certificados adicionales en el campo Certificado de IdP adicional.
    3. En el campo Atributo de usuario, introduzca el atributo para identificar a cada usuario. El atributo predeterminado de muchos proveedores es sub. Puede elegir otros atributos, como email o name, en función del proveedor de identidad. Los atributos que no sean email tienen el prefijo de la URL del emisor para evitar conflictos de nombres.
    4. En el campo Atributo de grupo, introduce el nombre del atributo del token del proveedor de identidades que contiene la información del grupo del usuario.
    5. Opcional: En la sección Asignación de atributos, haga clic en Añadir par e introduzca pares clave-valor para añadir atributos sobre un usuario, como su departamento o la URL de su imagen de perfil.
    6. Haz clic en Siguiente.
  6. En la sección Especificar administradores iniciales, sigue estos pasos:

    1. Elige si quieres añadir usuarios concretos o grupos como administradores iniciales.
    2. En el campo Nombre de usuario o alias de grupo, introduce la dirección de correo del usuario o del grupo para acceder a la organización. Si eres el administrador, introduce tu dirección de correo, por ejemplo, kiran@example.com. El prefijo se añade antes del nombre de usuario, como myidp-kiran@example.com.
    3. Haz clic en Siguiente.
  7. En la página Revisar, comprueba todos los valores de cada configuración de identidad antes de continuar.

    Haz clic en Atrás para volver a las páginas anteriores y hacer las correcciones necesarias.

  8. Haz clic en Configurar.

El nuevo perfil de proveedor de identidades está disponible en la lista de perfiles de identidad.

API

Para conectar tu proveedor de identidades con tu organización, crea el recurso personalizado global IdentityProviderConfig.

  1. Crea un archivo YAML de IdentityProviderConfigrecurso personalizadopa-idp-saml.yaml, como el siguiente:

    apiVersion: iam.global.gdc.goog/v1
    kind: IdentityProviderConfig
    metadata:
      name: pa-idp-saml
      namespace: platform
    spec:
      saml:
        groupPrefix: IDP_GROUP_PREFIX
        groupsAttribute: IDP_GROUP_ATTRIBUTE
        idpCertificateDataList:
        - "IDP_BASE64_ENCODED_CERTIFICATE"
        idpEntityID: IDP_SAML_ENTITY_ID
        idpSingleSignOnURI: IDP_SAML_SSO_URI
        userAttribute: IDP_USER_ATTRIBUTE
        userPrefix: IDP_USER_PREFIX
    

    Sustituye las siguientes variables:

    • IDP_GROUP_PREFIX: el prefijo de los grupos del IdP.
    • IDP_GROUP_ATTRIBUTE: el atributo de los grupos del IdP.
    • IDP_BASE64_ENCODED_CERTIFICATE: el certificado codificado en base64 del IdP.
    • IDP_SAML_ENTITY_ID: la URL o el URI para identificar de forma única el IdP.
    • IDP_SAML_SSO_URI: el URI del emisor del IdP.
    • IDP_USER_ATTRIBUTE: el atributo del usuario del IdP, como un correo electrónico.
    • IDP_USER_PREFIX: el nombre de la reclamación en el token del proveedor de identidades del usuario.
  2. Aplica el recurso personalizado IdentityProviderConfig al servidor de la API global:

    kubectl --kubeconfig GLOBAL_API_SERVER_KUBECONFIG apply -f pa-idp-saml.yaml
    

    Sustituye la variable GLOBAL_API_SERVER_KUBECONFIG por la ruta al archivo kubeconfig del servidor de la API global.

Eliminar un proveedor de identidades

Para eliminar un proveedor de identidades, sigue estos pasos en la consola de GDC:

  1. Inicia sesión en la consola de GDC.
  2. En el selector de proyectos, selecciona la organización en la que quieras eliminar el proveedor de identidades.
  3. En el menú de navegación, haz clic en Identidad y acceso > Identidad.
  4. Marca la casilla situada junto al nombre de uno o varios proveedores de identidades.

    Aparecerá un mensaje con el número de proveedores de identidad que has seleccionado y un botón Eliminar.

  5. Haz clic en Eliminar.