בדף הזה מוסבר איך אדמינים של Gemini Enterprise יכולים להשתמש ב-API כדי לנהל בקרת גישה מפורטת לאפליקציות ספציפיות של Gemini Enterprise.
כברירת מחדל, הרשאות IAM מנוהלות לרוב ברמת הפרויקט. מערכת IAM ברמת האפליקציה מאפשרת שליטה פרטנית יותר, ומאפשרת לאדמינים:
- הגבלת הגישה של משתמשים לאפליקציות ספציפיות באותו פרויקט Google Cloud .
- התאמת ההרשאות לצורכי הארגון ולסילו נתונים בפריסות של Gemini Enterprise.
לדוגמה, נניח שיש ארגון עם אפליקציית משאבי אנוש ואפליקציה לכלל החברה. חבר בצוות משאבי האנוש עם הרשאות ברמת הפרויקט יכול לגשת לשתי האפליקציות. לעומת זאת, אם משתמשים במדיניות IAM ברמת האפליקציה, אפשר להעניק לחבר בצוות המכירות גישה רק לאפליקציה שזמינה לכל החברה, וכך למנוע ממנו גישה לאפליקציה של משאבי האנוש.

לפני שמתחילים
מוודאים שיש לכם תפקיד אדמין של Gemini Enterprise.
מוודאים שלכל המשתמשים ב-Gemini Enterprise עם רישיון תקף מוקצה התפקיד משתמש מוגבל ב-Gemini Enterprise.
מעבר מגישה ברמת הפרויקט לגישה ברמת האפליקציה
כדי להגביל את המשתמשים לאפליקציות ספציפיות, צריך להסיר את התפקיד המתאים מההרשאות ברמת הפרויקט ואז להעניק אותו ברמת האפליקציה.
לדוגמה, כדי להעביר משתמש עם התפקיד 'משתמש Gemini Enterprise' (roles/discoveryengine.agentspaceUser) מרמת הפרויקט לרמת האפליקציה, מבצעים את השלבים הבאים:
- נכנסים לדף IAM במסוף Google Cloud .
- מאתרים את המשתמש ומסירים את התפקיד
roles/discoveryengine.agentspaceUserמההרשאות שלו ברמת הפרויקט. - משתמשים בשיטה
setIamPolicyכדי להעניק למשתמש את התפקידroles/discoveryengine.agentspaceUserבאפליקציה הספציפית. מידע נוסף זמין במאמר ניהול כללי מדיניות של IAM לאפליקציות.
ניהול מדיניות IAM לאפליקציות
כדי לנהל את הגישה לאפליקציית Gemini Enterprise, אפשר להשתמש בשיטות ה-API getIamPolicy
ו-setIamPolicy.
השלבים הבאים מראים איך לאחזר את המדיניות הנוכחית ואז לעדכן אותה כדי להעניק או לבטל את הגישה של המשתמש.
קבלת מדיניות ה-IAM של האפליקציה
מקבלים את מדיניות ה-IAM הנוכחית של האפליקציה באמצעות השיטה getIamPolicy. מומלץ לאחזר קודם את המדיניות הקיימת כדי למנוע החלפה של הרשאות קיימות.
REST
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID:getIamPolicy"
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט. -
ENDPOINT_LOCATION: האזור הרב-אזורי של בקשת ה-API. מציינים אחד מהערכים הבאים:-
usלאזור מרובה בארה"ב -
euלאזור עם מספר אזורים באיחוד האירופי globalלמיקום הגלובלי
-
-
LOCATION: האזור המרובה של מאגר הנתונים: global,usאוeu
APP_ID: המזהה של האפליקציה שרוצים להגדיר.
עדכון מדיניות ה-IAM של האפליקציה
כדי להעניק למשתמשים גישה לאפליקציה או לבטל את הגישה שלהם, צריך לעדכן את מדיניות ה-IAM של האפליקציה באמצעות השיטה setIamPolicy.
במדיניות IAM נעשה שימוש בתפקיד משתמש Gemini Enterprise (roles/discoveryengine.agentspaceUser) כדי להעניק למשתמשים גישה ישירה לאפליקציה.
REST
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"policy": {
"etag": "ETAG",
"bindings": [
{
"role": "roles/discoveryengine.agentspaceUser",
"members": [
"user:USER_EMAIL",
"group:GROUP_EMAIL",
"principal://iam.googleapis.com/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ID",
"principalSet://iam.googleapis.com/locations/global/workloadIdentityPools/POOL_ID/attribute.NAME/VALUE"
]
}
]
}
}' \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID:setIamPolicy"
מחליפים את מה שכתוב בשדות הבאים:
ETAG: הערךetagשקיבלתם בתגובה כשנעשה שימוש בשיטהgetIamPolicy.
USER_EMAIL, GROUP_EMAIL: כתובת אימייל אחת או יותר של משתמש או קבוצה. בנוסף ל-userול-group, גםprincipalו-principalSetהם סוגי חברים תקינים באיחוד שירותי אימות הזהות של עומסי עבודה.כדי להעניק גישה, מוסיפים חשבונות משתמשים למערך
members. לדוגמה,"user:cloudysanfrancisco@gmail.com"או"group:mcymbalgroup@google.com".כדי לבטל את הגישה, מסירים את החשבונות הראשיים ממערך ה-
members.
POOL_ID: המזהה של מאגר הזהויות של עומסי עבודה.
SUBJECT_ID: מזהה הנושא של זהות ספציפית.
NAME: השם של מאפיין.
VALUE: הערך של מאפיין.
PROJECT_ID: מזהה הפרויקט.
ENDPOINT_LOCATION: האזור הרב-אזורי של בקשת ה-API. מציינים אחד מהערכים הבאים:-
usלאזור מרובה בארה"ב -
euלאזור עם מספר אזורים באיחוד האירופי globalלמיקום הגלובלי
-
LOCATION: האזור המרובה של מאגר הנתונים: global,usאוeu.
APP_ID: המזהה של האפליקציה שרוצים להגדיר.
מה השלב הבא?
אם רוצים למחוק אפליקציה עם מדיניות IAM, אפשר להסיר את המשתמשים מהמדיניות לפני שמוחקים את האפליקציה. מידע נוסף זמין במאמר שיטות מומלצות למחיקת אפליקציה עם מדיניות IAM.