Wenn Ihr Identitätsanbieter (IdP) System for Cross-domain Identity Management (SCIM) unterstützt, können Sie ihn so konfigurieren, dass Gruppen in Google Cloudbereitgestellt und verwaltet werden.
Leistungsspektrum
Die SCIM-Unterstützung für die Mitarbeiteridentitätsföderation bietet die folgenden Funktionen:
Identitätssynchronisierung:Synchronisieren Sie schreibgeschützte Kopien von Nutzerdaten von Ihrem IdP, um einen ganzheitlichen Überblick über Nutzerattribute und Mitgliedschaften in Google Cloudzu erhalten.
Gruppen-Flattening:SCIM verarbeitet Gruppen von Ihrem IdP so, dass alle direkten und indirekten (verschachtelten) Mitgliedschaften für einen Nutzer zusammengeführt und mit demGoogle Cloud Group Membership Service (GMS) synchronisiert werden. IAM verwendet diese vereinfachten Gruppen dann für Richtlinienprüfungen und umgeht so die Größenbeschränkungen, die häufig in IdP-Tokens auftreten.
Gemini Enterprise-Integration:SCIM-Mandanten unterstützen die Freigabe in Gemini Enterprise. Der SCIM-Mandant ermöglicht zwei Funktionen, die sich auf die Freigabe von Notebooks in NotebookLM Enterprise beziehen:
Automatische Vervollständigung für E-Mail-Adressen und Gruppen
Verwendung des Gruppennamens anstelle der Objekt-ID (UUID)
Weitere Informationen finden Sie unter Notebook für eine Gruppe freigeben.
Hinweise
Wenn Sie die SCIM-Unterstützung für die Mitarbeiteridentitätsföderation verwenden, gelten die folgenden Überlegungen:
- Sie müssen einen Workforce Identity-Pool und einen Anbieter einrichten, bevor Sie einen SCIM-Mandanten konfigurieren.
- Jeder Mitarbeiteridentitätspool unterstützt nur einen SCIM-Mandanten. Da ein SCIM-Mandant unter einem bestimmten Workforce Identity-Pool-Anbieter erstellt wird, kann nur dieser Anbieter SCIM für Gruppen verwenden. Sie können die SCIM-Nutzung (
--scim-usage=enabled-for-groupsoder--scim-usage=enabled-for-users-groups) für keinen anderen Anbieter im selben Pool aktivieren. Wenn Sie einen neuen SCIM-Mandanten im selben Workforce Identity-Pool konfigurieren möchten, müssen Sie zuerst den vorhandenen Mandanten löschen. Sie haben folgende Möglichkeiten, einen SCIM-Mandanten zu löschen:- Vorläufiges Löschen (Standard): Wenn Sie einen SCIM-Mandanten löschen, beginnt ein Zeitraum von 30 Tagen für das vorläufige Löschen. Während dieser Zeit ist der Mandant ausgeblendet und kann nicht verwendet werden. Außerdem können Sie keinen neuen SCIM-Mandanten im selben Personalidentitätspool erstellen.
- Endgültig löschen:Wenn Sie einen SCIM-Mandanten dauerhaft und sofort löschen möchten, verwenden Sie das Flag
--hard-deletemit dem Befehl „delete“. Diese Aktion ist irreversibel. Sie können jedoch sofort nach dem Löschen einen neuen SCIM-Mandanten im selben Workforce Identity-Pool erstellen. Alternativ können Sie einen neuen Workforce Identity-Pool und einen neuen SCIM-Mandanten erstellen oder einen Workforce Identity-Pool verwenden, der noch nicht mit einem SCIM-Mandanten konfiguriert wurde.
- Wenn Sie SCIM verwenden, ordnen Sie Attribute sowohl im Workforce Identity-Poolanbieter als auch im SCIM-Mandanten zu. Das Attribut
google.subjectmuss eindeutig auf dieselben Identitäten verweisen. Sie geben diegoogle.subjectim Workforce Identity Pool-Anbieter mit dem Flag--attribute-mappingund im SCIM-Mandanten mit dem Flag--claim-mappingan. Wenn Sie nicht eindeutige Identitätswerte zuordnen, kann es passieren, dass Google Cloud verschiedene IdP-Identitäten als dieselbe Identität behandelt. Daher kann sich der Zugriff, der einer Nutzer- oder Gruppenidentität gewährt wird, auf andere ausweiten. Wenn Sie den Zugriff für eine Identität widerrufen, wird er möglicherweise nicht für alle entfernt. - Wenn Sie SCIM zum Zuordnen von Gruppen verwenden möchten, legen Sie
--scim-usage=enabled-for-groups(oder--scim-usage=enabled-for-users-groups) für den Workforce Identity-Pool-Anbieter mit dem angehängten SCIM-Mandanten fest. Wenn Sie Gruppen mit SCIM zuordnen, wird jede Gruppenzuordnung, die in diesem Anbieter definiert ist, zugunsten von SCIM-verwalteten Gruppen ignoriert. Wenn Sie sich auf SCIM-verwaltete Gruppen beziehen, ist das zugeordnete Attributgoogle.groupund nichtgoogle.groups.google.groupsbezieht sich nur auf Gruppen mit Tokenzuweisung. Wenn Sie die SCIM-Nutzung für einen Anbieter aktivieren, dem kein SCIM-Mandant zugeordnet ist, schlagen Anmeldeversuche über diesen Anbieter zur Laufzeit fehl, weil Google Cloud keinen SCIM-Mandanten unter dem Pfad des Anbieters finden kann. - Erzwingen der Eindeutigkeit: Google Cloud validiert und erzwingt die Eindeutigkeit von Attributen, die
google.subject(Nutzer) undgoogle.group(Gruppen) in einem SCIM-Mandanten zugeordnet sind. Wenn die von Ihrem IdP bereitgestellten zugeordneten Attribute während der Synchronisierung zu doppelten Werten fürgoogle.subjectodergoogle.groupführen, schlägt die Bereitstellung mit einem HTTP-Fehler409 Conflictfehl. Wenn ein zugeordnetes Attribut als „null“ oder leer ausgewertet wird, schlägt die Bereitstellung mit einem HTTP-Fehler400 Bad Requestfehl. - Bei Verwendung von SCIM können tokenbasierte Attribute, die mit
--attribute-mappingzugeordnet sind, weiterhin für die Authentifizierung und in Prinzipal-IDs verwendet werden. - Wenn Sie Microsoft Entra ID konfigurieren, um lesbare Gruppennamen in Gemini Enterprise zu aktivieren, verwenden Sie SCIM.
- Für die SCIM API (
iamscim.googleapis.com) gelten Ratenkontingente, die sich von den Standardkontingenten für IAM-Ressourcen-APIs unterscheiden. Standardmäßig sind Schreib- und Leseanfragen auf 3.000 Anfragen pro SCIM-Mandant pro Organisation pro Minute begrenzt. Weitere Informationen finden Sie unter Kontingente und Limits.
OIDC- und SAML-Anbieter der SCIM-Konfiguration zuordnen
Die Attributzuordnung in der Konfiguration des Workforce Identity-Pool-Anbieters (--attribute-mapping) muss mit den Anspruchszuordnungen im SCIM-Mandanten (--claim-mapping) übereinstimmen. Das zugrunde liegende IdP-Attribut, das zum Ausfüllen von google.subject (für Nutzer) verwendet wird, muss dasselbe sein, unabhängig davon, ob es aus einem Tokenanspruch oder einem SCIM-Attribut gelesen wird.
Wenn diese Zuordnungen nicht konsistent sind, können sich Nutzer möglicherweise anmelden, werden aber nicht als Mitglieder ihrer per SCIM bereitgestellten Gruppen erkannt. Wenn der Anbieter beispielsweise assertion.email für google.subject verwendet, muss der SCIM-Mandant auch das entsprechende SCIM-Attribut (z. B. user.emails[0].value) für google.subject verwenden.
In der folgenden Tabelle sehen Sie die Zuordnungen zwischen Token-Claim-Attributen und SCIM-Attributen:
| Google-Attribut | Zuordnung von Anbietern von Workforce Identity-Pools | SCIM-Mandantenzuordnung (SCIM) |
|---|---|---|
google.subject |
assertion.oid (EntraId) |
user.externalId |
google.subject |
assertion.sub (Okta) |
user.externalId |
google.subject |
assertion.preferred_username |
user.userName |
google.subject |
assertion.preferred_username.lowerAscii() |
user.userName.lowerAscii() |
google.subject |
assertion.email |
user.emails[0].value |
google.subject |
assertion.email.lowerAscii() |
user.emails[0].value.lowerAscii() |
google.group |
Nicht zutreffend (über SCIM zugeordnet) | group.externalId |
Unterstützte und nicht unterstützte Endpunkte
Die folgenden Standard-SCIM-Protokollendpunkte werden unterstützt:
/Users: Nutzerressourcen verwalten. Unterstützte Vorgänge:Create,Get,Update,Delete,PatchundPut./Groups: Gruppenressourcen verwalten. Unterstützte Vorgänge:Create,Get,Update,DeleteundPatch. DiePUT-Methode wird für Gruppen nicht unterstützt./Schemas: Schemainformationen abrufen./ServiceProviderConfig: Ruft die Konfiguration des Dienstanbieters ab.
Die folgenden SCIM-Protokollendpunkte werden nicht unterstützt:
/Me/Bulk/Search/ResourceTypes
Beschränkungen
In den folgenden Abschnitten werden die Einschränkungen und Abweichungen der Workforce Identity Federation-SCIM-Implementierung von den SCIM-Spezifikationen (RFC 7643 und 7644) beschrieben.
Einschränkungen für Protokollfunktionen
Filterunterstützung:Wenn Sie Nutzer oder Gruppen mit den Endpunkten
/Usersoder/Groupsauflisten, unterstützen Filterausdrücke nur den Operatoreq(gleich). Sie können mehrereeq-Filter mitandkombinieren. Andere SCIM-Filteroperatoren wieco(enthält) odersw(beginnt mit) werden nicht unterstützt.Paginierung:Die IAM SCIM API unterstützt keine Standardpaginierung für das Auflisten von Nutzern oder Gruppen.
startIndex: Dieser Parameter ist immer1. Die API gibt unabhängig vom Wert, den Sie fürstartIndexangeben, bis zu 100 Ergebnisse zurück.itemsPerPage: Die maximale Anzahl von Ressourcen, die in einer einzelnen Antwort zurückgegeben werden, beträgt 100.totalResults: Die API gibt nicht die tatsächliche Gesamtzahl der übereinstimmenden Ressourcen zurück. Das FeldtotalResultsin der Antwort entspricht immer der Anzahl der Elemente, die in dieser Antwort zurückgegeben werden, mit einem Maximum von 100.
Gruppe abrufen und Gruppen ohne Filter auflisten:Die APIs
GetGroupundListGroupsgeben eine leere Mitgliederliste zurück. Wenn Sie Mitglieder für eine bestimmte Gruppe abrufen möchten, verwenden Sie dieListGroupsAPI mit einem Mitgliedsfilter.Nicht konforme JSON-Antwort mit ungültigen Tokens:APIs, die ungültige API-Tokens enthalten, führen zu einem
401 HTTP errorvon Google Cloud. Die Antwort ist keine JSON-Struktur, wie in den Spezifikationen gefordert.
Einschränkungen des SCIM-Verhaltens
Unveränderliche Kennzeichnungen:Die Werte von SCIM-Attributen, die
google.subjectodergoogle.groupzugeordnet sind, werden in Google Cloudals unveränderliche Kennzeichnungen behandelt. Wenn Sie diese Werte ändern möchten, müssen Sie den Nutzer oder die Gruppe dauerhaft aus Ihrem IdP löschen und dann mit dem neuen Wert neu erstellen.Eindeutige und nicht leere Kennungen: Google Cloud erzwingt die Eindeutigkeit von Werten, die in einem SCIM-Mandanten
google.subjectundgoogle.groupzugeordnet sind. Die Synchronisierung zugeordneter Attribute, die zu doppelten Werten fürgoogle.subjectodergoogle.groupführen, schlägt mit einem HTTP-Fehler409 Conflictfehl. Zugeordnete Attribute, die als „null“ oder leer ausgewertet werden, führen zu einem HTTP-Fehler400 Bad Request.Anforderung für einzelne E-Mail-Adresse:Für eine erfolgreiche SCIM-Synchronisierung muss jeder Nutzer genau eine E-Mail-Adresse vom Typ
workhaben. Die Bereitstellung oder Aktualisierung schlägt fehl, wenn Ihr Identitätsanbieter mehrere E-Mail-Adressen sendet oder die angegebene E-Mail-Adresse nicht alsworkeingegeben wird.Nicht berücksichtigte Transformationen: Für SCIM-Anspruchszuordnungen werden nur begrenzte CEL-Transformationen (Common Expression Language) unterstützt. Für Vergleiche, bei denen die Groß-/Kleinschreibung nicht berücksichtigt wird, wird für
user.userNameunduser.emails[0].valuenur.lowerAscii()unterstützt.
Attributeinschränkungen
In den folgenden Abschnitten wird die Attributunterstützung für Nutzer, Gruppen und die Erweiterung des Enterprise-Nutzerschemas beschrieben.
Nutzerattribute
In der folgenden Tabelle wird die Unterstützung für Nutzerattribute beschrieben:
| Attribut | Unterattribute | Unterstützt | Beschränkungen |
|---|---|---|---|
userName |
– | Ja | – |
name |
formatted, familyName, givenName, middleName, honorificPrefix, honorificSuffix |
Ja | – |
displayName |
– | Ja | – |
nickName |
– | Ja | – |
profileUrl |
– | Ja | – |
title |
– | Ja | – |
userType |
– | Ja | – |
preferredLanguage |
– | Ja | – |
locale |
– | Ja | – |
timezone |
– | Ja | – |
active |
– | Ja | – |
password |
– | Nein | – |
emails |
display, type, value, primary |
Ja | Nur der E‑Mail-Typ work wird unterstützt. |
phoneNumbers |
display, type, value, primary |
Ja | – |
ims |
display, type, value |
Ja | – |
photos |
display, type, value |
Ja | – |
addresses |
formatted, streetAddress, locality, region, postalCode, country |
Ja | – |
groups |
– | Nein | – |
entitlements |
display, type, value |
Ja | – |
roles |
type, value |
Ja | display wird nicht unterstützt |
x509Certificates |
type, value |
Ja | display wird nicht unterstützt |
Gruppenattribute
In der folgenden Tabelle wird die Unterstützung für Gruppenattribute beschrieben:
| Attribut | Unterstützte Unterattribute |
|---|---|
displayName |
– |
externalId |
– |
members |
value, type, $ref, display |
Attribute für die Erweiterung des Unternehmensnutzerschemas
In der folgenden Tabelle wird die Unterstützung für die Erweiterung des Unternehmensnutzerschemas beschrieben:
| Attribut | Unterstützte Unterattribute |
|---|---|
employeeNumber |
– |
costCenter |
– |
organization |
– |
division |
– |
department |
– |
manager |
value, $ref, displayName |