במאמר הזה מוסבר איך ליצור דומיינים ותת-דומיינים של נתונים באמצעות המסוף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 (מזהה דומיין נתונים), מציינים מזהה ייחודי לדומיין. אי אפשר לשנות את הערך הזה אחרי שהמערכת יוצרת את הדומיין.
- בשדה מיקום, בוחרים את האזור שבו רוצים ליצור את דומיין הנתונים.
- בשדה מזהה פרויקט, בוחרים את הפרויקט שבו רוצים ליצור את תחום הנתונים.
- אופציונלי: בשדה תיאור, מזינים תיאור קצר של הדומיין.
- בשדה בעלים, מוסיפים בעלים אחד או יותר של הדומיין. אפשר להזין כמה כתובות אימייל בו-זמנית.
- בשדה שם לתצוגה, מציינים שם ידידותי למשתמש לדומיין. לדוגמה,
אופציונלי: בשדה תוויות, מזינים תוויות כדי לקבץ אובייקטים קשורים יחד או עם משאבים אחרים של Google Cloud .
לוחצים על יצירה. יכול להיות שיעברו כמה דקות עד שתהיה לכם גישה לדומיין הנתונים או עד שתוכלו לחפש אותו.
REST
כדי ליצור דומיין נתונים, משתמשים ב-method 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 (מזהה דומיין נתונים), מציינים מזהה ייחודי לדומיין. אי אפשר לשנות את הערך הזה אחרי שהמערכת יוצרת את הדומיין.
- אופציונלי: בשדה תיאור, מזינים תיאור קצר של הדומיין.
- בשדה בעלים, מוסיפים את כתובת האימייל של בעל הדומיין. אפשר להזין כמה כתובות אימייל בו-זמנית.
- בשדה שם לתצוגה, מציינים שם ידידותי למשתמש לדומיין. לדוגמה,
אופציונלי: בשדה תוויות, מזינים תוויות כדי לקבץ אובייקטים קשורים או משאבים אחרים של 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 Data Domain Configuration Viewer | roles/dataplex.dataDomainViewer |
מאפשרת לכם לראות את ההגדרה של דומיין הנתונים ואת הקישורים בין דומיין הנתונים לדומיין המשאבים. |
| Dataplex Data Domain Configuration Editor | roles/dataplex.dataDomainEditor |
מאפשר לערוך דומיינים קיימים וגם ליצור ולנהל את הקישורים בין הדומיין למשאב. תפקיד העורך מאפשר גם לנהל הרשאות מטא-נתונים שמאפשרות למשתמשים לגלות משאבים בדומיין. |
| Dataplex Data Domain Entry Reader | roles/dataplex.dataDomainEntryReader |
אפשר לגלות ולראות את תחום הנתונים, את תת-הדומיינים שלו ואת המטא-נתונים של כל המשאבים שנכללים בו. |
כשמקצים תפקידים לבעלי דומיין או למשתמשים, כדאי להביא בחשבון את הנקודות הבאות:
- תפקידים בדומיין של נתוני ניהול זהויות והרשאות גישה (IAM) מועברים מדומיינים ראשיים לתתי-דומיין, אבל לא ישירות למשאבים הכלולים. המשמעות היא שאם תעניקו את התפקיד
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כדי לאפשר למשתמש לגלות ולהציג את דומיין הנתונים, את תת-הדומיינים שלו ואת המטא-נתונים של המשאבים הכלולים. אם רוצים להקצות עוד תפקידים, לוחצים על Add another role.לוחצים על Save.
REST
כדי להגדיר את מדיניות ה-IAM בדומיין נתונים, משתמשים ב-method 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) ותגובה ריקה.
-
המאמרים הבאים
- מידע נוסף על דומיינים של נתונים
- מידע נוסף על שיוך והכללה של משאבים
- איך מנהלים דומיינים של נתונים
- איך משתמשים בדומיינים של נתונים