במאמר הזה מוסבר איך ליצור דומיינים ותת-דומיינים של נתונים באמצעות המסוףGoogle Cloud ו-API בארכיטקטורת REST, ואיך להעניק לניהול זהויות והרשאות גישה (IAM) את התפקידים וההרשאות למשתמשים שפועלים בדומיינים ובמשאבים שלהם.
לפני שמתחילים
לפני שיוצרים דומיינים של נתונים ומקצים בעלי דומיין, צריך לוודא שיש לכם את התפקידים הנדרשים ושהפעלתם את ממשקי ה-API הנדרשים.
- העומק המקסימלי של הקינון בדומיינים ובתת-דומיינים הוא חמש רמות.
- אפשר ליצור עד 50 תת-דומיינים ישירים בדומיין נתונים יחיד.
- בכל פרויקט יכולים להיות עד 1,000 דומיינים לכל אזור.
הפעלת ממשקי ה-API
מפעילים את Dataplex API.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין של Service Usage' (roles/serviceusage.serviceUsageAdmin). כך מקצים תפקידים.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות ליצירת תחומים של נתונים ולהקצאת בעלי תחומים, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:
-
הרשאה לניהול מלא של תחום הנתונים, הקישורים וכללי המדיניות של IAM:
אדמין של תחום נתונים ב-Dataplex (
roles/dataplex.dataDomainAdmin)
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
יצירה של דומיין נתונים
יוצרים תחום נתונים שישמש כקיבוץ לוגי של נכסי נתונים ומוצרים בתוך פרויקט ומיקום.
המסוף
נכנסים לדף Data domains במסוף Google Cloud .
לוחצים על יצירת דומיין נתונים ומזינים את הפרטים הבאים:
- בשדה שם לתצוגה, מציינים שם ידידותי למשתמש לדומיין. לדוגמה,
Finance. - בשדה Data Domain ID (מזהה דומיין נתונים), מציינים מזהה ייחודי לדומיין. אי אפשר לשנות את הערך הזה אחרי שהמערכת יוצרת את הדומיין.
- בשדה מיקום, בוחרים את האזור שבו רוצים ליצור את תחום הנתונים.
- בשדה מזהה פרויקט, בוחרים את הפרויקט שבו רוצים ליצור את תחום הנתונים.
- אופציונלי: בשדה תיאור, מזינים תיאור קצר של הדומיין.
- בשדה בעלים, מוסיפים בעלים אחד או יותר של הדומיין. אפשר להזין כמה כתובות אימייל בו-זמנית.
- בשדה שם לתצוגה, מציינים שם ידידותי למשתמש לדומיין. לדוגמה,
אופציונלי: בשדה Labels, מזינים תוויות כדי לקבץ אובייקטים קשורים יחד או עם משאבים אחרים של Google Cloud .
לוחצים על יצירה. יכול להיות שיחלפו כמה דקות עד שתוכלו לגשת לדומיין הנתונים או לחפש אותו.
REST
כדי ליצור דומיין נתונים, משתמשים בשיטה projects.locations.dataDomains.create.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
LOCATION_ID: האזור שבו רוצים ליצור את דומיין הנתונים. לדוגמה,us-central1. -
DATA_DOMAIN_ID: מזהה ייחודי של דומיין הנתונים.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains?data_domain_id=DATA_DOMAIN_ID
תוכן בקשת JSON:
{
"display_name": "Finance Domain",
"description": "Domain for finance datasets and reports.",
"contacts": {
"identities": [
{
"contact_name": "Alice Wonderland",
"contact_role": "owner",
"contact_id": "alice@example.com"
}
]
}
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.
יצירה של תת-דומיין לנתונים
ליצור תת-דומיין כדי להרחיב את ההיררכיה של דומיין הנתונים.
המסוף
נכנסים לדף Data domains במסוף Google Cloud .
בוחרים את הדומיין שרוצים ליצור לו תת-דומיין.
לוחצים על יצירת תת-דומיין של נתונים ומזינים את הפרטים הבאים:
- בשדה שם לתצוגה, מציינים שם ידידותי למשתמש לדומיין. לדוגמה,
Finance. - בשדה Data Domain ID (מזהה דומיין נתונים), מציינים מזהה ייחודי לדומיין. אי אפשר לשנות את הערך הזה אחרי שהמערכת יוצרת את הדומיין.
- אופציונלי: בשדה Description, מזינים תיאור קצר של הדומיין.
- בשדה בעלים, מוסיפים את כתובת האימייל של הבעלים של הדומיין. אפשר להזין כמה כתובות אימייל בו-זמנית.
- בשדה שם לתצוגה, מציינים שם ידידותי למשתמש לדומיין. לדוגמה,
אופציונלי: בשדה Labels, מזינים תוויות כדי לקבץ אובייקטים קשורים יחד או עם משאבים אחרים של Google Cloud .
לוחצים על יצירה. יכול להיות שיעברו כמה דקות עד שתוכלו לגשת לתת-הדומיין של הנתונים או לחפש בו.
REST
כדי ליצור תת-דומיין לנתונים, משתמשים בשיטה projects.locations.dataDomains.create ומציינים את parent_data_domain בגוף הבקשה.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
LOCATION_ID: האזור שבו קיים דומיין הנתונים הראשי. לדוגמה,us-central1. -
SUBDOMAIN_ID: מזהה ייחודי של תת-הדומיין של הנתונים. -
PARENT_DATA_DOMAIN_ID: המזהה הייחודי של דומיין הנתונים הראשי שמתחתיו נוצר תת-הדומיין הזה.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains?data_domain_id=SUBDOMAIN_ID
תוכן בקשת JSON:
{
"display_name": "Finance Subdomain",
"description": "A subdomain within the Finance domain.",
"contacts": {
"identities": [
{
"contact_name": "Alice Wonderland",
"contact_role": "owner",
"contact_id": "alice@example.com"
}
]
},
"parent_data_domain": "projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/PARENT_DATA_DOMAIN_ID"
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.
תפקידים והרשאות בדומיין נתונים
בטבלה הבאה מפורטים התפקידים המוגדרים מראש ב-IAM שאפשר להקצות לבעלים ולמשתמשים בדומיין נתונים.
| שם התפקיד | תפקיד IAM | תיאור |
|---|---|---|
| מנהל/ת של תחום נתונים ב-Dataplex | roles/dataplex.dataDomainAdmin |
אפשר ליצור ולנהל דומיינים ותת-דומיינים של נתונים, וגם את הקישורים שלהם. תפקיד האדמין מאפשר גם לנהל את כל התפקידים וההרשאות ב-IAM עבור דומיינים. |
| בעל הרשאת צפייה בהגדרות של תחום נתונים ב-Dataplex | roles/dataplex.dataDomainViewer |
ההרשאה הזו מאפשרת לכם לראות את ההגדרה של דומיין הנתונים ואת הקישורים לדומיין המשאבים. |
| Dataplex Data Domain Configuration Editor | roles/dataplex.dataDomainEditor |
מאפשר לערוך דומיינים קיימים וגם ליצור ולנהל את הקישורים בין המשאבים לדומיין. התפקיד 'עריכה' מאפשר גם לנהל הרשאות מטא-נתונים שמאפשרות למשתמשים לגלות משאבים בדומיין. |
| Dataplex Data Domain Entry Reader | roles/dataplex.dataDomainEntryReader |
מאפשר לכם לגלות את תחום הנתונים, את תת-הדומיינים שלו ואת המטא-נתונים של כל המשאבים שנכללים בו, ולצפות בהם. |
כשמקצים תפקידים לבעלי דומיין או למשתמשים, כדאי להביא בחשבון את הנקודות הבאות:
- תפקידים בתחום נתוני ניהול הזהויות והרשאות הגישה מועברים מדומיינים ראשיים לתתי-דומיין, אבל לא ישירות למשאבים הכלולים. כלומר, אם תעניקו את התפקיד
roles/dataplex.dataDomainEntryReaderלמשתמש בדומיין שכולל מערך נתונים ב-BigQuery, המשתמש לא יראה את התפקיד בין התפקידים של ניהול זהויות וגישה (IAM) במערך הנתונים. התפקיד
roles/dataplex.dataDomainEntryReaderשניתן בדומיין מאפשר לכם לבצע את הפעולות הבאות:- אתם יכולים לגלות משאבים, את הפרטים שלהם ואת המטא-נתונים שלהם, אבל רק כשאתם צופים במשאב בתוך הדומיין. מידע נוסף מופיע במאמר בנושא מגבלות של דומיין נתונים.
- אפשר להשתמש ב-methods של API כמו
lookupEntryבמשאב שנמצא בדומיין.
הענקת גישה לדומיין נתונים
המסוף
כדי לתת גישה לדומיין נתונים, פועלים לפי השלבים הבאים:
נכנסים לדף Data domains במסוף Google Cloud .
לוחצים על שם הדומיין כדי לעבור לדף פרטי הדומיין.
בסרגל העליון, לוחצים על הרשאות.
לוחצים על Add principal.
בשדה New principals, מזינים את כתובת האימייל של חשבון המשתמש.
בשדה Select a role (בחירת תפקיד), בוחרים את התפקיד בדומיין הנתונים. לדוגמה, אפשר להשתמש ב-
Dataplex Data Domain Entry Readerכדי לאפשר למשתמש לגלות את דומיין הנתונים, את תת-הדומיינים שלו ואת המטא-נתונים של המשאבים הכלולים, ולצפות בהם. אם רוצים להקצות עוד תפקידים, לוחצים על הוספת תפקיד נוסף.לוחצים על Save.
REST
כדי להגדיר את מדיניות ה-IAM בדומיין נתונים, משתמשים בשיטה projects.locations.dataDomains.setIamPolicy.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
LOCATION_ID: האזור שבו קיים דומיין הנתונים. לדוגמה,us-central1. -
DOMAIN_ID: המזהה הייחודי של תחום הנתונים. -
ROLE: התפקיד שרוצים להקצות למשתמש בדומיין.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID:setIamPolicy
תוכן בקשת JSON:
{
"policy": {
"bindings": [
{
"role": "ROLE",
"members": [
"user:example-user@google.com",
"group:finance-consumers@google.com"
]
}
]
}
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.
ביטול הגישה לדומיין נתונים
כדי להסיר תפקיד או הרשאה מחשבון ראשי, פועלים לפי השלבים הבאים:
המסוף
נכנסים לדף Data domains במסוף Google Cloud .
לוחצים על שם הדומיין כדי לעבור לדף פרטי הדומיין.
בסרגל העליון, לוחצים על הרשאות.
בחלונית Permissions, מאתרים את חשבון המשתמש שרוצים לבטל את התפקיד שלו.
לוחצים על סמל המחיקה לצד התפקיד שרוצים להסיר.
לוחצים על Save.
REST
כדי לבטל גישה לדומיין נתונים באמצעות API בארכיטקטורת REST, צריך לאחזר את המדיניות הקיימת באמצעות ה-method projects.locations.dataDomains.getIamPolicy, להסיר את התפקיד או את הישות המורשית מהרשימה bindings ולהגדיר את המדיניות המעודכנת באמצעות ה-method projects.locations.dataDomains.setIamPolicy:
קבלת מדיניות ה-IAM הנוכחית:
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
LOCATION_ID: האזור שבו קיים דומיין הנתונים. לדוגמה,us-central1. -
DOMAIN_ID: המזהה הייחודי של תחום הנתונים.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID:getIamPolicy
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.
-
הגדרת המדיניות המעודכנת:
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
LOCATION_ID: האזור שבו קיים דומיין הנתונים. לדוגמה,us-central1. -
DOMAIN_ID: המזהה הייחודי של תחום הנתונים. -
ROLE: התפקיד שרוצים להקצות למשתמש בדומיין.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID:setIamPolicy
תוכן בקשת JSON:
{ "policy": { "bindings": [ { "role": "ROLE", "members": [ "user:example-user@google.com", "group:finance-consumers@google.com" ] } ] } }כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.
-
המאמרים הבאים
- מידע נוסף על דומיינים של נתונים
- מידע נוסף על קישור והכללה של משאבים
- איך מנהלים דומיינים של נתונים
- איך משתמשים בדומיינים של נתונים