בדף הזה מוסבר איך לאכוף בקרת גישה למקורות נתונים באפליקציות חיפוש בחיפוש משולב עם סוכן.
בקרת הגישה למקורות הנתונים בחיפוש בעזרת סוכנים מגבילה את הנתונים שהמשתמשים יכולים לראות בתוצאות של אפליקציית החיפוש. Google משתמשת בספק הזהויות כדי לזהות את משתמש הקצה שמבצע חיפוש ולקבוע אם יש לו גישה למסמכים שמוחזרים כתוצאות.
לדוגמה, נניח שעובדים בחברה שלכם מחפשים מסמכים ב-Confluence באמצעות אפליקציית החיפוש שלכם. עם זאת, אתם צריכים לוודא שהם לא יכולים לראות תוכן דרך האפליקציה שאסור להם לגשת אליו. אם הגדרתם מאגר כוח עבודה ב- Google Cloud עבור ספק הזהויות של הארגון, תוכלו לציין גם את מאגר כוח העבודה הזה בחיפוש באמצעות Agent. מעכשיו, אם עובד משתמש באפליקציה שלכם, הוא מקבל תוצאות חיפוש רק למסמכים שלחשבון שלו כבר יש גישה אליהם ב-Confluence.
מידע על בקרת גישה למקורות נתונים
הפעלת בקרת הגישה היא תהליך חד-פעמי.
אפשר להשתמש בבקרת גישה ב-Cloud Storage, ב-BigQuery, ב-Google Drive ובכל מקורות הנתונים של צד שלישי.
כדי להפעיל את בקרת הגישה למקורות נתונים בחיפוש בסוכן, צריך להגדיר את ספק הזהויות של הארגון ב- Google Cloud. אלה מסגרות האימות שנתמכות:
Google Identity:
מקרה 1: אם אתם משתמשים ב-Google Identity, כל זהויות המשתמשים וקבוצות המשתמשים קיימות ומנוהלות דרך Google Cloud. מידע נוסף על Google Identity זמין במאמר Google Identity.
מקרה 2: אתם משתמשים בספק זהויות של צד שלישי וסנכרנתם את הזהויות עם Google Identity. משתמשי הקצה שלכם משתמשים בזהות Google כדי לבצע אימות לפני שהם ניגשים למשאבי Google או ל-Google Workspace.
מקרה 3: אתם משתמשים בספק זהויות של צד שלישי וסנכרנתם את הזהויות עם Google Identity. עם זאת, אתם עדיין משתמשים בספק הזהויות הקיים של צד שלישי כדי לבצע את האימות. הגדרתם כניסה יחידה (SSO) באמצעות Google Identity, כך שהמשתמשים מתחילים את הכניסה באמצעות Google Identity ואז מופנים לספק הזהויות של צד שלישי. (יכול להיות שכבר ביצעתם את הסנכרון הזה כשביצעתם הגדרה של משאבים אחרים Google Cloud או של Google Workspace).
איחוד של ספק זהויות חיצוני: אם אתם משתמשים בספק זהויות חיצוני – לדוגמה, Microsoft Entra ID, Okta או Ping, אבל לא רוצים לסנכרן את הזהויות שלכם עם Google Cloud Identity, אתם צריכים להגדיר איחוד של Workload Identity ב- Google Cloudלפני שתוכלו להפעיל את בקרת הגישה למקור נתונים ב-Agent Search.
אם אתם משתמשים במחברים של צד שלישי, המאפיין
google.subjectצריך להיות ממופה לשדה של כתובת האימייל בספק הזהויות החיצוני. בהמשך מופיעות דוגמאות למיפוי מאפיינים שלgoogle.subjectושלgoogle.groupsעבור ספקי זהויות נפוצים:Microsoft Entra ID עם פרוטוקול OIDC
google.subject=assertion.email google.groups=assertion.groupsMicrosoft Entra ID עם פרוטוקול SAML
google.subject=assertion.attributes['http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name'][0] google.groups=assertion.attributes['http://schemas.microsoft.com/ws/2008/06/identity/claims/groups']google.subject=assertion.email google.groups=assertion.groupsgoogle.subject=assertion.subject google.groups=assertion.attributes['groups']
מגבלות
הגבלות על בקרת הגישה:
- אפשר להוסיף עד 3,000 קוראים לכל מסמך. כל חשבון משתמש נספר כקורא, כאשר חשבון משתמש יכול להיות קבוצה או משתמש בודד.
- אפשר לבחור ספק זהויות אחד לכל מיקום שנתמך בחיפוש סוכנים.
- כדי להגדיר מקור נתונים עם בקרת גישה, צריך לבחור את ההגדרה הזו במהלך יצירת מאגר הנתונים. אי אפשר להפעיל או להשבית את ההגדרה הזו במאגר נתונים קיים.
- בכרטיסייה נתונים > מסמכים במסוף לא מוצגים נתונים ממקורות נתונים עם בקרת גישה, כי הנתונים האלה אמורים להיות גלויים רק למשתמשים שיש להם גישת צפייה.
- כדי לראות תצוגה מקדימה של תוצאות ממשק המשתמש באפליקציות חיפוש שמשתמשות בבקרת גישה של צד שלישי, צריך להיכנס למסוף המאוחד. איך רואים את תוצאות התצוגה המקדימה של אפליקציות עם בקרת גישה
לפני שמתחילים
ההליך הזה מניח שהגדרתם ספק זהויות בGoogle Cloud פרויקט שלכם.
- Google Identity: אם אתם משתמשים ב-Google Identity, אתם יכולים להמשיך אל התהליך קישור לספק הזהויות.
- ספק זהויות של צד שלישי: מוודאים שהגדרתם מאגר זהויות של כוח עבודה עבור ספק הזהויות של הצד השלישי. מוודאים שציינתם מיפויים של מאפייני נושא וקבוצה כשמגדירים מאגר כוח עבודה. מידע על מיפוי מאפיינים זמין במאמר מיפוי מאפיינים במסמכי התיעוד של IAM. מידע נוסף על מאגרי זהויות של כוח העבודה זמין במאמר ניהול ספקים של מאגרי זהויות של כוח עבודה במסמכי התיעוד של IAM.
התחברות לספק הזהויות
כדי לציין ספק זהויות עבור Agent Search ולהפעיל את בקרת הגישה למקורות נתונים, פועלים לפי השלבים הבאים:
נכנסים לדף AI Applications במסוף Google Cloud .
עוברים לדף הגדרות > אימות.
לוחצים על סמל העריכה לצד המיקום שרוצים לעדכן.
בתיבת הדו-שיח הוספת ספק זהויות, בוחרים את ספק הזהויות. אם בוחרים ספק זהויות של צד שלישי, צריך לבחור גם את מאגר כוח העבודה שרלוונטי למקורות הנתונים.
לוחצים על שמירת השינויים.
הגדרה של מקור נתונים עם בקרת גישה
כדי להחיל בקרת גישה על מקור נתונים, פועלים לפי השלבים הבאים בהתאם לסוג מקור הנתונים שמגדירים:
- מקורות נתונים של צד שלישי: לא נדרשת הגדרה נוספת כשיוצרים את האפליקציה. אפשר לדלג אל תצוגה מקדימה של תוצאות עבור אפליקציות עם בקרת גישה של צד שלישי
- Google Drive: לא נדרשת הגדרה נוספת כשיוצרים את האפליקציה.
- נתונים לא מובְנים מ-Cloud Storage
- נתונים מובְנים מ-Cloud Storage
- נתונים לא מובנים מ-BigQuery
- נתונים מובנים מ-BigQuery
נתונים לא מובנים מ-Cloud Storage
כשמגדירים מאגר נתונים לנתונים לא מובנים מ-Cloud Storage, צריך גם להעלות מטא-נתונים של רשימת ACL ולהגדיר את מאגר הנתונים כמאגר עם בקרת גישה:
כשמכינים את הנתונים, צריך לכלול את פרטי ה-ACL במטא-נתונים באמצעות השדה
acl_info. לדוגמה:{ "id": "<your-id>", "jsonData": "<JSON string>", "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" }, "acl_info": { "readers": [ { "principals": [ { "group_id": "group_1" }, { "user_id": "user_1" } ] } ] } }מידע נוסף על נתונים לא מובְנים עם מטא-נתונים זמין בקטע 'נתונים לא מובְנים' במאמר הכנת נתונים להוספה.
כשפועלים לפי השלבים ליצירת מאגר נתונים במאמר יצירת מאגר נתוני חיפוש, אפשר להפעיל בקרת גישה באמצעות הפעולות הבאות בקונסולה או באמצעות ה-API:
- מסוף: כשיוצרים מאגר נתונים, בוחרים באפשרות This data store contains access control information (מאגר הנתונים הזה מכיל מידע על בקרת גישה) במהלך יצירת מאגר הנתונים.
- API: כשיוצרים מאגר נתונים, צריך לכלול את הדגל
"aclEnabled": "true"במטען הייעודי (payload) של JSON.
כשפועלים לפי השלבים לייבוא נתונים במאמר יצירת מאגר נתוני חיפוש, חשוב לבצע את הפעולות הבאות:
- מעלים את המטא-נתונים עם פרטי ACL מאותו מאגר שבו נמצאים הנתונים הלא מובנים
- אם משתמשים ב-API, מגדירים את
GcsSource.dataSchemaלערךdocument
נתונים מובנים מ-Cloud Storage
כשמגדירים מאגר נתונים לנתונים מובנים מ-Cloud Storage, צריך גם להעלות מטא-נתונים של ACL ולהגדיר את מאגר הנתונים כמאגר עם בקרת גישה:
כשמכינים את הנתונים, צריך לכלול את פרטי ה-ACL במטא-נתונים באמצעות השדה
acl_info. לדוגמה:{ "id": "<your-id>", "jsonData": "<JSON string>", "acl_info": { "readers": [ { "principals": [ { "group_id": "group_1" }, { "user_id": "user_1" } ] } ] } }כשפועלים לפי השלבים ליצירת מאגר נתונים במאמר יצירת מאגר נתוני חיפוש, אפשר להפעיל בקרת גישה באמצעות הפעולות הבאות בקונסולה או באמצעות ה-API:
- מסוף: כשיוצרים מאגר נתונים, בוחרים באפשרות This data store contains access control information (מאגר הנתונים הזה מכיל מידע על בקרת גישה) במהלך יצירת מאגר הנתונים.
- API: כשיוצרים מאגר נתונים, צריך לכלול את הדגל
"aclEnabled": "true"במטען הייעודי (payload) של JSON.
כשפועלים לפי השלבים לייבוא נתונים במאמר יצירת מאגר נתוני חיפוש, חשוב לבצע את הפעולות הבאות:
- מעלים את המטא-נתונים עם פרטי ACL מאותו מאגר שבו נמצאים הנתונים הלא מובנים
- אם משתמשים ב-API, מגדירים את
GcsSource.dataSchemaלערךdocument
נתונים לא מובְנים מ-BigQuery
כשמגדירים מאגר נתונים לנתונים לא מובנים מ-BigQuery, צריך להגדיר את מאגר הנתונים כמאגר עם בקרת גישה ולספק מטא-נתונים של רשימת ACL באמצעות סכימה מוגדרת מראש לחיפוש בעזרת AI:
כשמכינים את הנתונים, צריך לציין את הסכימה הבאה. אל תשתמשו בסכימה מותאמת אישית.
[ { "name": "id", "mode": "REQUIRED", "type": "STRING", "fields": [] }, { "name": "jsonData", "mode": "NULLABLE", "type": "STRING", "fields": [] }, { "name": "content", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "mimeType", "type": "STRING", "mode": "NULLABLE" }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" } ] } { "name": "acl_info", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "readers", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "principals", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "user_id", "type": "STRING", "mode": "NULLABLE" }, { "name": "group_id", "type": "STRING", "mode": "NULLABLE" } ] } ] } ] } ]כוללים את המטא-נתונים של רשימת בקרת הגישה כעמודה בטבלה ב-BigQuery.
כשפועלים לפי השלבים במאמר יצירת מאגר נתוני חיפוש, צריך להפעיל את בקרת הגישה במסוף או באמצעות ה-API:
- מסוף: כשיוצרים מאגר נתונים, בוחרים באפשרות This data store contains access control information (מאגר הנתונים הזה מכיל מידע על בקרת גישה) במהלך יצירת מאגר הנתונים.
- API: כשיוצרים מאגר נתונים, צריך לכלול את הדגל
"aclEnabled": "true"במטען הייעודי (payload) של JSON.
כשמבצעים את השלבים לייבוא נתונים במאמר יצירת מאגר נתוני חיפוש, אם משתמשים ב-API, צריך להגדיר את
BigQuerySource.dataSchemaלערךdocument.
נתונים מובְנים מ-BigQuery
כשמגדירים מאגר נתונים לנתונים מובנים מ-BigQuery, צריך להגדיר את מאגר הנתונים כמאגר עם בקרת גישה ולספק מטא-נתונים של רשימת ACL באמצעות סכימה מוגדרת מראש לחיפוש סוכנים:
כשמכינים את הנתונים, צריך לציין את הסכימה הבאה. אל תשתמשו בסכימה מותאמת אישית.
[ { "name": "id", "mode": "REQUIRED", "type": "STRING", "fields": [] }, { "name": "jsonData", "mode": "NULLABLE", "type": "STRING", "fields": [] }, { "name": "acl_info", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "readers", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "principals", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "user_id", "type": "STRING", "mode": "NULLABLE" }, { "name": "group_id", "type": "STRING", "mode": "NULLABLE" } ] } ] } ] } ]כוללים את המטא-נתונים של רשימת בקרת הגישה כעמודה בטבלה ב-BigQuery.
כשפועלים לפי השלבים במאמר יצירת מאגר נתוני חיפוש, צריך להפעיל את בקרת הגישה במסוף או באמצעות ה-API:
- מסוף: כשיוצרים מאגר נתונים, בוחרים באפשרות This data store contains access control information (מאגר הנתונים הזה מכיל מידע על בקרת גישה) במהלך יצירת מאגר הנתונים.
- API: כשיוצרים מאגר נתונים, צריך לכלול את הדגל
"aclEnabled": "true"במטען הייעודי (payload) של JSON.
כשפועלים לפי השלבים לייבוא נתונים במאמר יצירת מאגר נתוני חיפוש, חשוב לבצע את הפעולות הבאות:
- אם משתמשים במסוף, כשמציינים את סוג הנתונים שמעלים, בוחרים באפשרות JSONL for structured data with metadata (JSONL לנתונים מובְנים עם מטא-נתונים).
- אם משתמשים ב-API, מגדירים את
BigQuerySource.dataSchemaלערךdocument
תצוגה מקדימה של התוצאות במסוף איחוד שירותי אימות הזהויות של כוח העבודה
כדי לראות תצוגה מקדימה של תוצאות עבור אפליקציות עם בקרת גישה של צד שלישי במסוףGoogle Cloud , צריך להיכנס באמצעות פרטי הכניסה של הארגון.
כדי לראות תצוגה מקדימה של תוצאות ממשק המשתמש:
נכנסים לדף AI Applications במסוף Google Cloud .
לוחצים על השם של אפליקציית החיפוש שרוצים לראות תצוגה מקדימה של התוצאות שלה.
עוברים לדף תצוגה מקדימה.
לוחצים על תצוגה מקדימה עם זהות מאוחדת כדי לעבור אל מסוף איחוד שירותי אימות הזהות של כוח העבודה.
מזינים את פרטי הכניסה של ספק מאגר הזהויות של כוח העבודה ושל הארגון.
תוצאות התצוגה המקדימה של האפליקציה יופיעו בדף תצוגה מקדימה.
מידע נוסף על תצוגה מקדימה של תוצאות החיפוש זמין במאמר בנושא קבלת תוצאות חיפוש.
מידע נוסף על מסוף איחוד שירותי אימות הזהות של כוח העבודה זמין במאמר מידע על המסוף (המאוחד).
הענקת הרשאות חיפוש למשתמשים
כדי לאפשר למשתמשים לחפש נתונים עם בקרת גישה באמצעות האפליקציה, צריך להעניק גישה למשתמשים בדומיין או במאגר כוח העבודה. מומלץ להקצות לקבוצת המשתמשים תפקיד IAM בהתאמה אישית.
- Google Identity: אם אתם משתמשים ב-Google Identity, מומלץ ליצור קבוצת Google שכוללת את כל העובדים שצריכים לבצע חיפוש. אדמינים ב-Google Workspace יכולים לכלול את כל המשתמשים בארגון בקבוצת Google. כדי לעשות זאת, צריך לפעול לפי השלבים במאמר הוספת כל המשתמשים בארגון לקבוצה.
- ספק זהויות מצד שלישי: אם אתם משתמשים בספק זהויות חיצוני, למשל Okta או Microsoft Entra ID, אתם צריכים להוסיף את כל מי שנכלל במאגר הזהויות של כוח העבודה לקבוצה אחת.
מומלץ ליצור תפקיד IAM בהתאמה אישית כדי להעניק אותו לקבוצת המשתמשים, באמצעות ההרשאות הבאות:
discoveryengine.answers.getdiscoveryengine.servingConfigs.answerdiscoveryengine.servingConfigs.searchdiscoveryengine.sessions.getdiscoveryengine.widgetConfigs.get
מידע נוסף על הרשאות למשאבי חיפוש מבוסס סוכנים באמצעות ניהול זהויות והרשאות גישה (IAM) זמין במאמר בקרת גישה באמצעות IAM.
מידע נוסף על תפקידים בהתאמה אישית זמין במאמר תפקידים בהתאמה אישית במסמכי IAM.
איך מאשרים את ווידג'ט החיפוש
אם רוצים לפרוס ווידג'ט חיפוש לאפליקציה עם בקרת גישה, צריך לפעול לפי השלבים הבאים:
מקצים את התפקיד 'צפייה ב-Discovery Engine' למשתמשים בדומיין או במאגר כוח העבודה שצריכים לבצע קריאות ל-Search API.
יוצרים טוקנים של הרשאה כדי להעביר אותם לווידג'ט:
- ב-Google Identity: יוצרים אסימוני גישה מסוג OAuth 2.0.
- באיחוד שירותי אימות הזהות של כוח העבודה: כדי לקבל את האסימון, פועלים לפי השלבים במאמר קבלת אסימונים לטווח קצר לאיחוד שירותי אימות הזהות של כוח העבודה.
פועלים לפי השלבים במאמר בנושא הוספת ווידג'ט עם טוקן הרשאה כדי להעביר את הטוקן לווידג'ט.