Aprovisionamiento de SCIM para la federación de identidades de personal

Si tu proveedor de identidad (IdP) admite el Sistema para la administración de identidades entre dominios (SCIM), puedes configurarlo para aprovisionar y administrar grupos en Google Cloud.

Funciones

La compatibilidad con SCIM de la federación de identidades de personal proporciona las siguientes capacidades:

  • Sincronización de identidades: Sincroniza copias de solo lectura de los datos del usuario desde tu IdP para obtener una vista integral de las propiedades y membresías del usuario en Google Cloud.

  • Aplanamiento de grupos: SCIM procesa los grupos de tu IdP para que todas las membresías directas e indirectas (anidadas) de un usuario se aplanen y se sincronicen con elGoogle Cloud Servicio de membresías de grupos (GMS). Luego, IAM usa estos grupos aplanados para las verificaciones de políticas, lo que supera las restricciones de tamaño que a menudo se encuentran en los tokens de IdP.

  • Integración de Gemini Enterprise: Los arrendatarios de SCIM admiten el uso compartido en Gemini Enterprise. Los usuarios pueden compartir cuadernos de NotebookLM con un grupo usando el nombre del grupo en lugar de su ID de objeto (UUID). Para obtener más información, consulta Cómo compartir un notebook con un grupo.

Consideraciones

Cuando usas la compatibilidad con SCIM de la federación de identidades de personal, se aplican las siguientes consideraciones:

  • Debes configurar un grupo y un proveedor de identidades de los trabajadores antes de configurar un arrendatario de SCIM.
  • Cada grupo de identidades de personal solo admite un usuario de SCIM. Para configurar un inquilino de SCIM nuevo en el mismo grupo de identidades de personal, primero debes borrar el existente. Cuando borras un arrendatario de SCIM, tienes dos opciones:
    • Borrado no definitivo (predeterminado): Cuando se borra un arrendatario de SCIM, se inicia un período de borrado no definitivo de 30 días. Durante este tiempo, el arrendatario estará oculto y no se podrá usar, y no podrás crear un nuevo arrendatario de SCIM en el mismo grupo de identidades de la fuerza laboral.
    • Borrado definitivo: Para borrar de forma permanente e inmediata un arrendatario de SCIM, usa la marca --hard-delete con el comando de borrado. Esta acción es irreversible y te permite crear un nuevo arrendatario de SCIM en el mismo grupo de identidades de la fuerza laboral inmediatamente después de que se complete la eliminación. Como alternativa, puedes crear un nuevo grupo de identidades para el personal y un nuevo arrendatario de SCIM, o bien usar un grupo de identidades para el personal que no se haya configurado previamente con un arrendatario de SCIM.
  • Cuando usas SCIM, asignas atributos tanto en el proveedor de grupos de identidades de personal como en el arrendatario de SCIM. El atributo google.subject debe hacer referencia de forma única a las mismas identidades. Puedes especificar el google.subject en el proveedor del grupo de identidades de la organización con la marca --attribute-mapping y en el usuario de SCIM con la marca --claim-mapping. Asignar valores de identidad no únicos puede hacer que Google Cloud trate diferentes identidades de IdP como la misma identidad. Como resultado, el acceso que se otorga a la identidad de un usuario o grupo se puede extender a otros, pero revocar el acceso de uno podría no quitarlo de todos.
  • Para usar SCIM y asignar grupos, establece --scim-usage=enabled-for-groups. Cuando asignas grupos con SCIM, se ignora cualquier asignación de grupos que se defina en el proveedor de identidades para cargas de trabajo. Cuando se hace referencia a grupos administrados por SCIM, el atributo asignado es google.group, no google.groups. google.groups solo hace referencia a los grupos asignados por token.
  • Cuando se usa SCIM, los atributos basados en tokens que se asignan con --attribute-mapping se pueden seguir usando para la autenticación y en los identificadores principales.
  • Para la configuración de Microsoft Entra ID, no debes usar marcas --extended-attributes cuando crees el proveedor de grupos de identidades de personal.

Asigna proveedores de OIDC y SAML a la configuración de SCIM

Debe haber coherencia entre la asignación de atributos en la configuración del proveedor del grupo de identidades de la fuerza laboral (--attribute-mapping) y las asignaciones de reclamos en el arrendatario de SCIM (--claim-mapping). El atributo subyacente del IdP que se usa para completar google.subject (para los usuarios) debe ser el mismo, ya sea que se lea desde un reclamo de token o un atributo de SCIM.

Si estas asignaciones son incoherentes, es posible que los usuarios puedan acceder, pero no se los reconocerá como miembros de sus grupos aprovisionados por SCIM. Por ejemplo, si el proveedor usa assertion.email para google.subject, el arrendatario de SCIM también debe usar el atributo de SCIM equivalente (por ejemplo, user.emails[0].value) para google.subject.

En la siguiente tabla, se proporcionan ejemplos de referencia para asignar declaraciones de tokens de IdP comunes a atributos de SCIM:

Atributo de Google Asignación del proveedor del grupo de identidades del personal (token) Asignación de inquilinos de SCIM (SCIM)
google.subject assertion.oid user.externalId
google.subject assertion.email user.emails[0].value
google.subject assertion.email.lowerAscii() user.emails[0].value.lowerAscii()
google.subject assertion.preferred_username user.userName
google.subject assertion.sub Incompatible
google.group N/A (se asigna con SCIM) group.externalId

Extremos compatibles y no compatibles

Se admiten los siguientes extremos del protocolo SCIM estándar:

  • /Users: Administrar recursos del usuario Operaciones admitidas: Create, Get, Update, Delete, Patch y Put.

  • /Groups: Administrar recursos del grupo Operaciones admitidas: Create, Get, Update, Delete y Patch. El método PUT no se admite para los grupos.

  • /Schemas: Recupera información del esquema.

  • /ServiceProviderConfig: Recupera la configuración del proveedor de servicios.

No se admiten los siguientes extremos del protocolo SCIM:

  • /Me

  • /Bulk

  • /Search

  • /ResourceTypes

Limitaciones

En las siguientes secciones, se describen las limitaciones y las desviaciones de la implementación de SCIM de la federación de identidades para la fuerza laboral con respecto a las especificaciones de SCIM (RFC 7643 y 7644).

Limitaciones de la función de protocolo

  • Compatibilidad con filtros: Cuando enumeras usuarios o grupos con los extremos /Users o /Groups, las expresiones de filtro solo admiten el operador eq (igual a). Puedes combinar varios filtros eq con and. No se admiten otros operadores de filtro de SCIM, como co (contiene) o sw (comienza con).

  • Paginación: La API de IAM SCIM no admite la paginación estándar para enumerar usuarios o grupos.

    • startIndex: Este parámetro siempre es 1. La API devuelve hasta 100 resultados, independientemente del valor que proporciones para startIndex.

    • itemsPerPage: La cantidad máxima de recursos que se devuelven en una sola respuesta es 100.

    • totalResults: La API no devuelve el recuento total real de los recursos coincidentes. El campo totalResults de la respuesta siempre es igual a la cantidad de elementos que se muestran en esa respuesta, con un máximo de 100.

Limitaciones del comportamiento de SCIM

  • Identificadores inmutables: Los valores de los atributos de SCIM que se asignan a google.subject o google.group se tratan como identificadores inmutables dentro de Google Cloud. Si necesitas cambiar estos valores, debes borrar de forma permanente al usuario o grupo de tu IdP y, luego, volver a crearlo con el valor nuevo.

  • Requisito de un solo correo electrónico: Para que la sincronización de SCIM se realice correctamente, cada usuario debe tener exactamente una dirección de correo electrónico de tipo work. El aprovisionamiento o las actualizaciones fallarán si tu IdP envía varios correos electrónicos o si el único correo electrónico proporcionado no se escribe como work.

  • Transformaciones que no distinguen mayúsculas de minúsculas: Se admiten transformaciones limitadas de Common Expression Language (CEL) para las asignaciones de atributos de SCIM. Solo se admite .lowerAscii() para las comparaciones que no distinguen mayúsculas de minúsculas en user.userName y user.emails[0].value.

Limitaciones de los atributos

En las siguientes secciones, se describe la compatibilidad de los atributos para los usuarios, los grupos y la extensión del esquema de usuarios de la empresa.

Atributos de usuario

En la siguiente tabla, se detalla la compatibilidad con los atributos del usuario:

Atributo Atributos secundarios Admitido Limitaciones
userName N/A N/A
name formatted, familyName, givenName, middleName, honorificPrefix, honorificSuffix N/A
displayName N/A N/A
nickName N/A N/A
profileUrl N/A N/A
title N/A N/A
userType N/A N/A
preferredLanguage N/A N/A
locale N/A N/A
timezone N/A N/A
active N/A N/A
password N/A No N/A
emails display, type, value, primary Solo se admite el tipo de correo electrónico work.
phoneNumbers display, type, value, primary N/A
ims display, type, value N/A
photos display, type, value N/A
addresses formatted, streetAddress, locality, region, postalCode, country N/A
groups N/A No N/A
entitlements display, type, value N/A
roles type, value display no es compatible.
x509Certificates type, value display no es compatible.

Atributos del grupo

En la siguiente tabla, se detalla la compatibilidad con los atributos de grupo:

Atributo Subatributos admitidos
displayName N/A
externalId N/A
members value, type, $ref, display

Atributos de extensión del esquema de usuario empresarial

En la siguiente tabla, se detalla la compatibilidad con la extensión del esquema de usuario empresarial:

Atributo Subatributos admitidos
employeeNumber N/A
costCenter N/A
organization N/A
division N/A
department N/A
manager value, $ref, displayName

¿Qué sigue?