Si votre fournisseur d'identité (IdP) est compatible avec le System for Cross-domain Identity Management (SCIM), vous pouvez le configurer pour provisionner et gérer des groupes dans Google Cloud.
Capacités
La compatibilité SCIM de la fédération d'identité de personnel offre les fonctionnalités suivantes :
Synchronisation des identités : synchronisez des copies en lecture seule des données utilisateur de votre IdP pour obtenir une vue globale des propriétés et des appartenances des utilisateurs dans Google Cloud.
Aplatissement des groupes : SCIM traite les groupes de votre IdP de sorte que toutes les appartenances directes et indirectes (imbriquées) d'un utilisateur soient aplaties et synchronisées avec le service d'appartenance aux groupesGoogle Cloud . IAM utilise ensuite ces groupes aplatis pour vérifier les règles, ce qui permet de surmonter les contraintes de taille souvent rencontrées dans les jetons IdP.
Intégration de Gemini Enterprise : les locataires SCIM sont compatibles avec le partage dans Gemini Enterprise. Les utilisateurs peuvent partager des notebooks NotebookLM avec un groupe en utilisant le nom du groupe au lieu de son ID d'objet (UUID). Pour en savoir plus, consultez Partager un notebook avec un groupe.
Remarques
Lorsque vous utilisez la compatibilité SCIM avec la fédération d'identité de personnel, les points suivants doivent être pris en compte :
- Vous devez configurer un pool et un fournisseur d'identités de personnel avant de configurer un locataire SCIM.
- Chaque pool d'identités de personnel n'est compatible qu'avec un seul locataire SCIM. Pour configurer un locataire SCIM dans le même pool d'identités de personnel, vous devez d'abord supprimer celui qui existe déjà. Lorsque vous supprimez un locataire SCIM, vous avez deux options :
- Suppression réversible (par défaut) : la suppression d'un locataire SCIM lance une période de suppression réversible de 30 jours. Pendant cette période, le locataire est masqué et ne peut pas être utilisé. Vous ne pouvez pas non plus créer de locataire SCIM dans le même pool d'identité de personnel.
- Suppression définitive : pour supprimer définitivement et immédiatement un locataire SCIM, utilisez l'option
--hard-deleteavec la commande de suppression. Cette action est irréversible et vous permet de créer un locataire SCIM dans le même pool d'identités de personnel immédiatement après la suppression. Vous pouvez également créer un pool d'identités de personnel et un locataire SCIM, ou utiliser un pool d'identités de personnel qui n'a pas encore été configuré avec un locataire SCIM.
- Lorsque vous utilisez SCIM, vous mappez les attributs dans le fournisseur de pool d'identités des employés et dans le locataire SCIM. L'attribut
google.subjectdoit faire référence de manière unique aux mêmes identités. Vous spécifiez legoogle.subjectdans le fournisseur de pool d'identités du personnel à l'aide du flag--attribute-mappinget dans le locataire SCIM à l'aide du flag--claim-mapping. Le mappage de valeurs d'identité non uniques peut entraîner le traitement de différentes identités de fournisseur d'identité comme une seule et même identité par Google Cloud . Par conséquent, l'accès accordé à une identité d'utilisateur ou de groupe peut s'étendre à d'autres, mais la révocation de l'accès à l'une d'elles ne le supprime pas forcément pour toutes. - Pour utiliser SCIM afin de mapper des groupes, définissez
--scim-usage=enabled-for-groups. Lorsque vous mappez des groupes à l'aide de SCIM, tout mappage de groupe défini dans le fournisseur de pool d'identités de personnel est ignoré. Lorsque vous faites référence à des groupes gérés par SCIM, l'attribut mappé estgoogle.group, et nongoogle.groups.google.groupsne fait référence qu'aux groupes mappés par jeton. - Lorsque vous utilisez SCIM, les attributs basés sur des jetons mappés avec
--attribute-mappingpeuvent toujours être utilisés pour l'authentification et dans les identifiants principaux. - Pour la configuration de Microsoft Entra ID, vous ne devez pas utiliser les indicateurs
--extended-attributeslorsque vous créez le fournisseur de pools d'identités des employés.
Mapper les fournisseurs OIDC et SAML à la configuration SCIM
Le mappage des attributs dans la configuration du fournisseur du pool d'identités du personnel (--attribute-mapping) doit être cohérent avec le mappage des revendications dans le locataire SCIM (--claim-mapping). L'attribut du fournisseur d'identité sous-jacent utilisé pour remplir google.subject (pour les utilisateurs) doit être le même, qu'il soit lu à partir d'une revendication de jeton ou d'un attribut SCIM.
Si ces mappages sont incohérents, les utilisateurs pourront peut-être se connecter, mais ne seront pas reconnus comme membres de leurs groupes provisionnés par SCIM. Par exemple, si le fournisseur utilise assertion.email pour google.subject, le locataire SCIM doit également utiliser l'attribut SCIM équivalent (par exemple, user.emails[0].value) pour google.subject.
Le tableau suivant fournit des exemples de référence pour mapper les revendications de jetons IdP courants aux attributs SCIM :
| Attribut Google | Mappage des fournisseurs de pools d'identités de personnel (jeton) | Mappage de locataires 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 (mappé à l'aide de SCIM) | group.externalId |
Points de terminaison compatibles et non compatibles
Les points de terminaison du protocole SCIM standard suivants sont acceptés :
/Users: gérer les ressources utilisateur. Opérations acceptées :Create,Get,Update,Delete,PatchetPut./Groups: gérez les ressources du groupe. Opérations acceptées :Create,Get,Update,DeleteetPatch. La méthodePUTn'est pas acceptée pour les groupes./Schemas: récupérer les informations du schéma./ServiceProviderConfig: récupérez la configuration du fournisseur de services.
Les points de terminaison du protocole SCIM suivants ne sont pas acceptés :
/Me/Bulk/Search/ResourceTypes
Limites
Les sections suivantes décrivent les limites et les écarts de l'implémentation SCIM de la fédération d'identité du personnel par rapport aux spécifications SCIM (RFC 7643 et 7644).
Limites des fonctionnalités du protocole
Compatibilité avec les filtres : lorsque vous listez des utilisateurs ou des groupes à l'aide des points de terminaison
/Usersou/Groups, les expressions de filtre ne sont compatibles qu'avec l'opérateureq(égal à). Vous pouvez combiner plusieurs filtreseqavecand. Les autres opérateurs de filtre SCIM, tels queco(contient) ousw(commence par), ne sont pas acceptés.Pagination : l'API IAM SCIM n'est pas compatible avec la pagination standard pour lister les utilisateurs ou les groupes.
startIndex: ce paramètre est toujours1. L'API renvoie jusqu'à 100 résultats, quelle que soit la valeur que vous fournissez pourstartIndex.itemsPerPage: le nombre maximal de ressources renvoyées dans une même réponse est de 100.totalResults: l'API ne renvoie pas le nombre total réel de ressources correspondantes. Le champtotalResultsde la réponse est toujours égal au nombre d'éléments renvoyés dans cette réponse, avec un maximum de 100.
Limites de comportement SCIM
Identifiants immuables : les valeurs des attributs SCIM mappés sur
google.subjectougoogle.groupsont traitées comme des identifiants immuables dans Google Cloud. Si vous devez modifier ces valeurs, vous devez supprimer définitivement l'utilisateur ou le groupe de votre IdP, puis le recréer avec la nouvelle valeur.Exigence concernant l'adresse e-mail unique : pour que la synchronisation SCIM réussisse, chaque utilisateur doit disposer d'une seule adresse e-mail de type
work. Le provisionnement ou les mises à jour échoueront si votre IdP envoie plusieurs e-mails ou si l'adresse e-mail unique fournie n'est pas de typework.Transformations insensibles à la casse : les transformations CEL (Common Expression Language) limitées sont acceptées pour les mappages de revendications SCIM. Seul
.lowerAscii()est compatible avec les comparaisons non sensibles à la casse pouruser.userNameetuser.emails[0].value.
Limites des attributs
Les sections suivantes décrivent la compatibilité des attributs pour les utilisateurs, les groupes et l'extension du schéma utilisateur de l'entreprise.
Attributs utilisateur
Le tableau suivant détaille la compatibilité des attributs utilisateur :
| Attribut | Sous-attributs | Compatible | Limites |
|---|---|---|---|
userName |
N/A | Oui | N/A |
name |
formatted, familyName, givenName, middleName, honorificPrefix, honorificSuffix |
Oui | N/A |
displayName |
N/A | Oui | N/A |
nickName |
N/A | Oui | N/A |
profileUrl |
N/A | Oui | N/A |
title |
N/A | Oui | N/A |
userType |
N/A | Oui | N/A |
preferredLanguage |
N/A | Oui | N/A |
locale |
N/A | Oui | N/A |
timezone |
N/A | Oui | N/A |
active |
N/A | Oui | N/A |
password |
N/A | Non | N/A |
emails |
display, type, value, primary |
Oui | Seul le type d'adresse e-mail work est accepté. |
phoneNumbers |
display, type, value, primary |
Oui | N/A |
ims |
display, type, value |
Oui | N/A |
photos |
display, type, value |
Oui | N/A |
addresses |
formatted, streetAddress, locality, region, postalCode, country |
Oui | N/A |
groups |
N/A | Non | N/A |
entitlements |
display, type, value |
Oui | N/A |
roles |
type, value |
Oui | Le caractère display n'est pas accepté. |
x509Certificates |
type, value |
Oui | Le caractère display n'est pas accepté. |
Attributs des groupes
Le tableau suivant détaille la compatibilité des attributs de groupe :
| Attribut | Sous-attributs acceptés |
|---|---|
displayName |
N/A |
externalId |
N/A |
members |
value, type, $ref, display |
Attributs d'extension du schéma utilisateur Enterprise
Le tableau suivant détaille la compatibilité avec l'extension du schéma utilisateur Enterprise :
| Attribut | Sous-attributs acceptés |
|---|---|
employeeNumber |
N/A |
costCenter |
N/A |
organization |
N/A |
division |
N/A |
department |
N/A |
manager |
value, $ref, displayName |
Étapes suivantes
- Configurer la compatibilité SCIM pour la fédération des identités des employés
- Journalisation d'audit IAM SCIM