אם ספק הזהויות (IdP) שלכם תומך במערכת לניהול זהויות חוצה-דומיינים (SCIM), אתם יכולים להגדיר את ספק הזהויות כך שיקצה וינהל קבוצות ב- Google Cloud.
יכולות
התמיכה ב-SCIM באיחוד שירותי אימות הזהות של כוח העבודה מספקת את היכולות הבאות:
סנכרון זהויות: סנכרון של עותקים לקריאה בלבד של נתוני משתמשים מספק הזהויות שלכם כדי לקבל תצוגה הוליסטית של מאפייני משתמשים וחברות ב- Google Cloud.
השטחת קבוצות: פרוטוקול SCIM מעבד קבוצות מספק הזהויות (IdP) כך שכל החברויות הישירות והעקיפות (מקוננות) של משתמש מושטחות ומסונכרנות עםGoogle Cloud שירות החברות בקבוצות (GMS). לאחר מכן, מערכת IAM משתמשת בקבוצות האלה שפושטו כדי לבדוק את המדיניות, וכך מתגברות על מגבלות הגודל שנפוצות בדרך כלל בטוקנים של ספקי IdP.
שילוב של Gemini Enterprise: דיירים ב-SCIM תומכים בשיתוף ב-Gemini Enterprise. דייר SCIM מאפשר שתי תכונות שקשורות לשיתוף מחברות ב-NotebookLM Enterprise:
השלמה אוטומטית של כתובות אימייל וקבוצות
שימוש בשם הקבוצה במקום במזהה האובייקט שלה (UUID)
מידע נוסף זמין במאמר בנושא שיתוף מחברת עם קבוצה.
לתשומת ליבכם
כשמשתמשים בתמיכה של SCIM באיחוד שירותי אימות הזהות של כוח העבודה, צריך לקחת בחשבון את הנקודות הבאות:
- צריך להגדיר מאגר זהויות של כוח עבודה וספק לפני שמגדירים דייר SCIM.
- כל מאגר זהויות של כוח עבודה תומך רק בדייר SCIM אחד. כדי להגדיר דייר SCIM חדש באותו מאגר זהויות של כוח עבודה, צריך קודם למחוק את הדייר הקיים. כשמוחקים דייר SCIM, יש שתי אפשרויות:
- מחיקה עם אפשרות שחזור (ברירת מחדל): מחיקה של דייר SCIM מתחילה תקופה של 30 יום של מחיקה עם אפשרות שחזור. במהלך התקופה הזו, הדייר מוסתר ואי אפשר להשתמש בו, ואי אפשר ליצור דייר SCIM חדש באותו מאגר זהויות של כוח העבודה.
- מחיקה סופית: כדי למחוק דייר SCIM באופן מיידי ולתמיד, משתמשים בדגל
--hard-deleteעם פקודת המחיקה. הפעולה הזו היא בלתי הפיכה, והיא מאפשרת ליצור דייר SCIM חדש באותו מאגר זהויות של כוח העבודה מיד אחרי שהמחיקה מסתיימת. לחלופין, אפשר ליצור מאגר זהויות חדש של כוח עבודה ודייר SCIM חדש, או להשתמש במאגר זהויות של כוח עבודה שלא הוגדר בעבר עם דייר SCIM.
- כשמשתמשים ב-SCIM, ממפים מאפיינים גם בספק מאגר הזהויות של כוח העבודה וגם בדייר SCIM. המאפיין
google.subjectחייב להתייחס לאותם מזהים באופן ייחודי. מציינים אתgoogle.subjectבספק של מאגר הזהויות של כוח העבודה באמצעות הדגל--attribute-mapping, ובדייר SCIM באמצעות הדגל--claim-mapping. מיפוי של ערכי זהות לא ייחודיים עלול לגרום ל- Google Cloud להתייחס לזהויות שונות ב-IdP כאילו הן אותה זהות. כתוצאה מכך, גישה שניתנת למשתמש אחד או לקבוצה אחת יכולה להתרחב למשתמשים אחרים, אבל ביטול הגישה של משתמש אחד לא יסיר את הגישה מכולם. - כדי להשתמש ב-SCIM למיפוי קבוצות, מגדירים את
--scim-usage=enabled-for-groups. כשממפים קבוצות באמצעות SCIM, המערכת מתעלמת מכל מיפוי קבוצות שמוגדר בספק של מאגר הזהויות של כוח העבודה. כשמתייחסים לקבוצות שמנוהלות על ידי SCIM, המאפיין הממופה הואgoogle.groupולאgoogle.groups.google.groupsמתייחס רק לקבוצות שממופות לטוקנים. - כשמשתמשים ב-SCIM, עדיין אפשר להשתמש במאפיינים מבוססי-אסימון שממופים באמצעות
--attribute-mappingלאימות ולמזהי ישויות. - כדי להגדיר את Microsoft Entra ID כך ששמות הקבוצות יהיו קריאים ב-Gemini Enterprise, צריך להשתמש ב-SCIM.
מיפוי ספקי OIDC ו-SAML להגדרת SCIM
צריכה להיות עקביות בין מיפוי המאפיינים בהגדרות של ספק מאגר הזהויות של כוח העבודה (--attribute-mapping) לבין מיפויי ההצהרות בדייר SCIM (--claim-mapping). מאפיין ספק הזהויות הבסיסי שמשמש לאכלוס google.subject (למשתמשים) צריך להיות זהה, בין אם הוא נקרא מהצהרת אסימון או ממאפיין SCIM.
אם המיפויים האלה לא עקביים, יכול להיות שהמשתמשים יוכלו להיכנס אבל לא יזוהו כחברים בקבוצות שהוקצו להם באמצעות SCIM. לדוגמה, אם הספק משתמש ב-assertion.email בשביל google.subject, דייר SCIM צריך להשתמש גם במאפיין SCIM המקביל (לדוגמה, user.emails[0].value) בשביל google.subject.
בטבלה הבאה מוצגים המיפויים בין מאפייני הצהרה של אסימון לבין מאפייני SCIM:
| מאפיין של Google | מיפוי של ספק מאגר זהויות של כוח עבודה | מיפוי דיירים ב-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 |
לא רלוונטי (מופה באמצעות SCIM) | group.externalId |
נקודות קצה נתמכות ולא נתמכות
יש תמיכה בנקודות הקצה הבאות של פרוטוקול SCIM:
/Users: ניהול משאבי משתמשים. פעולות נתמכות:Create,Get,Update,Delete,Patchו-Put.
/Groups: ניהול משאבי קבוצה. פעולות נתמכות:Create,Get,Update,Deleteו-Patch. השיטהPUTלא נתמכת לקבוצות.
/Schemas: אחזור פרטי הסכימה.
/ServiceProviderConfig: אחזור ההגדרות של ספק השירות.
אין תמיכה בנקודות הקצה הבאות של פרוטוקול SCIM:
/Me/Bulk/Search/ResourceTypes
מגבלות
בקטעים הבאים מתוארות המגבלות והסטיות של הטמעת SCIM באיחוד שירותי אימות הזהויות של כוח העבודה ממפרטי SCIM (RFC 7643 ו-7644).
מגבלות על תכונות של פרוטוקולים
תמיכה במסננים: כשמציגים רשימה של משתמשים או קבוצות באמצעות נקודות הקצה
/Usersאו/Groups, ביטויי המסננים תומכים רק באופרטורeq(שווה ל). אפשר לשלב כמה מסנניeqעםand. אין תמיכה באופרטורים אחרים של מסנני SCIM, כמוco(מכיל) אוsw(מתחיל ב).חלוקה לדפים: ה-IAM SCIM API לא תומך בחלוקה רגילה לדפים כשמציגים רשימה של משתמשים או קבוצות.
startIndex: הפרמטר הזה תמיד1. ה-API מחזיר עד 100 תוצאות, ללא קשר לערך שמזינים בפרמטרstartIndex.
itemsPerPage: המספר המקסימלי של משאבים שמוחזרים בתגובה אחת הוא 100.
totalResults: ה-API לא מחזיר את המספר הכולל של המשאבים התואמים. השדהtotalResultsבתשובה תמיד שווה למספר הפריטים שמוחזרים בתשובה הזו, עד 100 פריטים.
קבלת קבוצה ורשימת קבוצות ללא סינון: ממשקי ה-API
GetGroupו-ListGroupsמחזירים רשימת חברים ריקה. כדי לאחזר את חברי קבוצה ספציפית, משתמשים ב-ListGroupsAPI עם מסנן חברים.תגובת JSON לא תואמת עם אסימונים לא תקינים: ממשקי API שמכילים אסימון API לא תקין יחזירו
401 HTTP errorמ- Google Cloud. התגובה היא לא מבנה JSON כנדרש במפרט.
מגבלות על התנהגות SCIM
מזהים שלא ניתן לשנות: המערכת מתייחסת לערכים של מאפייני SCIM שממופים ל-
google.subjectאו ל-google.groupכמזהים שלא ניתן לשנות ב- Google Cloud. אם אתם צריכים לשנות את הערכים האלה, אתם צריכים למחוק את המשתמש או הקבוצה מ-IdP באופן סופי ואז ליצור אותם מחדש עם הערך החדש.דרישה לכתובת אימייל אחת: כדי שסנכרון SCIM יצליח, לכל משתמש צריכה להיות בדיוק כתובת אימייל אחת מהסוג
work. הקצאת הרשאות או עדכונים ייכשלו אם ספק הזהויות ישלח כמה אימיילים או אם האימייל היחיד שסופק לא יוקלד כ-work.טרנספורמציות לא תלויות-רישיות: יש תמיכה בטרנספורמציות מוגבלות של Common Expression Language (CEL) למיפוי טענות SCIM. רק הערך
.lowerAscii()נתמך בהשוואות לא תלויות-רישיות שלuser.userNameו-user.emails[0].value.
מגבלות על מאפיינים
בקטעים הבאים מתוארת התמיכה במאפיינים של משתמשים, קבוצות והרחבת סכימת המשתמשים בארגון.
מאפייני המשתמשים
בטבלה הבאה מפורטות אפשרויות התמיכה במאפייני משתמשים:
| מאפיין | מאפייני משנה | נתמך | מגבלות |
|---|---|---|---|
userName |
לא רלוונטי | כן | לא רלוונטי |
name |
formatted, familyName, givenName, middleName, honorificPrefix, honorificSuffix |
כן | לא רלוונטי |
displayName |
לא רלוונטי | כן | לא רלוונטי |
nickName |
לא רלוונטי | כן | לא רלוונטי |
profileUrl |
לא רלוונטי | כן | לא רלוונטי |
title |
לא רלוונטי | כן | לא רלוונטי |
userType |
לא רלוונטי | כן | לא רלוונטי |
preferredLanguage |
לא רלוונטי | כן | לא רלוונטי |
locale |
לא רלוונטי | כן | לא רלוונטי |
timezone |
לא רלוונטי | כן | לא רלוונטי |
active |
לא רלוונטי | כן | לא רלוונטי |
password |
לא רלוונטי | לא | לא רלוונטי |
emails |
display, type, value, primary |
כן | יש תמיכה רק בסוג האימייל work. |
phoneNumbers |
display, type, value, primary |
כן | לא רלוונטי |
ims |
display, type, value |
כן | לא רלוונטי |
photos |
display, type, value |
כן | לא רלוונטי |
addresses |
formatted, streetAddress, locality, region, postalCode, country |
כן | לא רלוונטי |
groups |
לא רלוונטי | לא | לא רלוונטי |
entitlements |
display, type, value |
כן | לא רלוונטי |
roles |
type, value |
כן | אין תמיכה ב-display. |
x509Certificates |
type, value |
כן | אין תמיכה ב-display. |
מאפייני הקבוצות
בטבלה הבאה מפורטת התמיכה במאפיינים קבוצתיים:
| מאפיין | מאפייני משנה נתמכים |
|---|---|
displayName |
לא רלוונטי |
externalId |
לא רלוונטי |
members |
value, type, $ref, display |
מאפיינים של הרחבות לסכימת משתמשים בארגון
בטבלה הבאה מפורטות תמיכה בהרחבת סכימת המשתמשים בארגון:
| מאפיין | מאפייני משנה נתמכים |
|---|---|
employeeNumber |
לא רלוונטי |
costCenter |
לא רלוונטי |
organization |
לא רלוונטי |
division |
לא רלוונטי |
department |
לא רלוונטי |
manager |
value, $ref, displayName |