בדף הזה מוסבר איך לאכוף בקרת גישה למקורות נתונים (שנקראת גם רשימות ACL) באפליקציות חיפוש שאתם יוצרים באמצעות Cloud Storage או BigQuery.
סקירה כללית
בקרת הגישה למקורות הנתונים ב-Gemini Enterprise מגבילה את הנתונים שהמשתמשים יכולים לראות בתוצאות של אפליקציית החיפוש. Google משתמשת בספק הזהויות שלכם כדי לזהות את משתמש הקצה שמבצע חיפוש, ולקבוע אם יש לו גישה למסמכים שמוחזרים כתוצאות.
לדוגמה, נניח שהעובדים בחברה שלכם מחפשים במסמכי BigQuery באמצעות אפליקציית החיפוש, אבל אתם צריכים לוודא שהם לא יכולים לראות דרך האפליקציה תוכן שאין להם גישה אליו. אם הגדרתם מאגר של כוח עבודה ב- Google Cloud לספק הזהויות של הארגון, אתם יכולים לציין את המאגר הזה גם ב-Gemini Enterprise. עכשיו, אם עובד משתמש באפליקציה, הוא מקבל תוצאות חיפוש רק למסמכים שלחשבון שלו כבר יש גישה אליהם ב-BigQuery.
הפעלת בקרת הגישה היא הליך חד-פעמי. כדי להחיל בקרת גישה על מקור נתונים ב-BigQuery או ב-Cloud Storage, צריך לבצע את השלבים הבאים בהתאם לסוג הנתונים, כמו נתונים מובְנים או לא מובְנים.
- נתונים לא מובְנים מ-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" } ] } ] } }מידע נוסף על נתונים לא מובְנים עם מטא-נתונים זמין בקטע "נתונים לא מובְנים" במאמר הכנת נתונים להטמעה.
כשמבצעים את השלבים ליצירת מאגר נתונים ביצירת מאגר נתונים מאינטראקציה ישירה (First-Party), אפשר להפעיל את בקרת הגישה באמצעות המסוף או ה-API:
- מסוף: כשיוצרים מאגר נתונים, בוחרים באפשרות This data store contains access control information.
- API: כשיוצרים מאגר נתונים, צריך לכלול את השדה
"aclEnabled": "true"במטען הייעודי (payload) של ה-JSON.
כשמבצעים את השלבים לייבוא נתונים ביצירת מאגר נתונים מאינטראקציה ישירה (First-Party), חשוב לבצע את הפעולות הבאות:
- מעלים את המטא-נתונים עם פרטי ה-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" } ] } ] } }כשמבצעים את השלבים ליצירת מאגר נתונים ביצירת מאגר נתונים מאינטראקציה ישירה (First-Party), אפשר להפעיל את בקרת הגישה באמצעות המסוף או ה-API:
- Console: כשיוצרים מאגר נתונים, בוחרים באפשרות This data store contains access control information.
- API: כשיוצרים מאגר נתונים, צריך לכלול את השדה
"aclEnabled": "true"במטען הייעודי (payload) של ה-JSON.
כשמבצעים את השלבים לייבוא נתונים בקטע יצירת מאגר נתונים מאינטראקציה ישירה, חשוב לבצע את הפעולות הבאות:
- מעלים את המטא-נתונים עם פרטי ה-ACL מאותו קטגוריה כמו הנתונים המובְנים.
- אם משתמשים ב-API, מגדירים את
GcsSource.dataSchemaבתורdocument
נתונים לא מובְנים מ-BigQuery
כשמגדירים מאגר נתונים לנתונים לא מובנים מ-BigQuery, צריך להגדיר את מאגר הנתונים כמאגר עם בקרת גישה ולספק מטא-נתונים של ACL באמצעות סכימה מוגדרת מראש ל-Gemini Enterprise:
כשמכינים את הנתונים, צריך לציין את הסכימה הבאה. אל תשתמשו בסכימה מותאמת אישית.
[ { "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" } ] } ] } ] } ]כוללים את המטא-נתונים של רשימת ה-ACL כעמודה בטבלה ב-BigQuery.
כשמבצעים את השלבים שמפורטים במאמר יצירת מאגר נתונים מאינטראקציה ישירה, מפעילים את בקרת הגישה במסוף או באמצעות ה-API:
- Console: כשיוצרים מאגר נתונים, בוחרים באפשרות This data store contains access control information.
- API: כשיוצרים מאגר נתונים, צריך לכלול את השדה
"aclEnabled": "true"במטען הייעודי (payload) של ה-JSON.
כשמבצעים את השלבים לייבוא נתונים ביצירת מאגר נתונים מאינטראקציה ישירה (First-Party), אם משתמשים ב-API, צריך להגדיר את
BigQuerySource.dataSchemaלערךdocument.
נתונים מובְנים מ-BigQuery
כשמגדירים מאגר נתונים לנתונים מובְנים מ-BigQuery, צריך להגדיר את מאגר הנתונים כמאגר עם בקרת גישה ולספק מטא-נתונים של רשימת ACL באמצעות סכימה מוגדרת מראש ל-Gemini Enterprise:
כשמכינים את הנתונים, צריך לציין את הסכימה הבאה. אל תשתמשו בסכימה מותאמת אישית.
[ { "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" } ] } ] } ] } ]כוללים את המטא-נתונים של רשימת ה-ACL כעמודה בטבלה ב-BigQuery.
כשמבצעים את השלבים שמפורטים במאמר יצירת מאגר נתונים מאינטראקציה ישירה, מפעילים את בקרת הגישה במסוף או באמצעות ה-API:
- מסוף: כשיוצרים מאגר נתונים, בוחרים באפשרות This data store contains access control information.
- API: כשיוצרים מאגר נתונים, צריך לכלול את השדה
"aclEnabled": "true"במטען הייעודי (payload) של ה-JSON.
כשמבצעים את השלבים לייבוא נתונים ביצירת מאגר נתונים מאינטראקציה ישירה (First-Party), חשוב לבצע את הפעולות הבאות:
- אם אתם משתמשים במסוף, כשאתם מציינים את סוג הנתונים שאתם מעלים, בחרו באפשרות JSONL for structured data with metadata.
- אם משתמשים ב-API, מגדירים את
BigQuerySource.dataSchemaלערךdocument.