יצירת דומיינים של נתונים

במאמר הזה מוסבר איך ליצור דומיינים ותת-דומיינים של נתונים באמצעות המסוףGoogle Cloud ו-API בארכיטקטורת REST, ואיך להעניק לניהול זהויות והרשאות גישה (IAM) את התפקידים וההרשאות למשתמשים שפועלים בדומיינים ובמשאבים שלהם.

לפני שמתחילים

לפני שיוצרים דומיינים של נתונים ומקצים בעלי דומיין, צריך לוודא שיש לכם את התפקידים הנדרשים ושהפעלתם את ממשקי ה-API הנדרשים.

  • העומק המקסימלי של הקינון בדומיינים ובתת-דומיינים הוא חמש רמות.
  • אפשר ליצור עד 50 תת-דומיינים ישירים בדומיין נתונים יחיד.
  • בכל פרויקט יכולים להיות עד 1,000 דומיינים לכל אזור.

הפעלת ממשקי ה-API

מפעילים את Dataplex API.

תפקידים שנדרשים להפעלת ממשקי API

כדי להפעיל ממשקי API, נדרשת ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין של Service Usage' (roles/serviceusage.serviceUsageAdmin). כך מקצים תפקידים.

להפעלת ה-API

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות ליצירת תחומים של נתונים ולהקצאת בעלי תחומים, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:

להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

יצירה של דומיין נתונים

יוצרים תחום נתונים שישמש כקיבוץ לוגי של נכסי נתונים ומוצרים בתוך פרויקט ומיקום.

המסוף

  1. נכנסים לדף Data domains במסוף Google Cloud .

    מעבר אל "דומיינים של נתונים"

  2. לוחצים על יצירת דומיין נתונים ומזינים את הפרטים הבאים:

    • בשדה שם לתצוגה, מציינים שם ידידותי למשתמש לדומיין. לדוגמה, Finance.
    • בשדה Data Domain ID (מזהה דומיין נתונים), מציינים מזהה ייחודי לדומיין. אי אפשר לשנות את הערך הזה אחרי שהמערכת יוצרת את הדומיין.
    • בשדה מיקום, בוחרים את האזור שבו רוצים ליצור את תחום הנתונים.
    • בשדה מזהה פרויקט, בוחרים את הפרויקט שבו רוצים ליצור את תחום הנתונים.
    • אופציונלי: בשדה תיאור, מזינים תיאור קצר של הדומיין.
    • בשדה בעלים, מוסיפים בעלים אחד או יותר של הדומיין. אפשר להזין כמה כתובות אימייל בו-זמנית.
  3. אופציונלי: בשדה Labels, מזינים תוויות כדי לקבץ אובייקטים קשורים יחד או עם משאבים אחרים של Google Cloud .

  4. לוחצים על יצירה. יכול להיות שיחלפו כמה דקות עד שתוכלו לגשת לדומיין הנתונים או לחפש אותו.

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) ותגובה ריקה.

יצירה של תת-דומיין לנתונים

ליצור תת-דומיין כדי להרחיב את ההיררכיה של דומיין הנתונים.

המסוף

  1. נכנסים לדף Data domains במסוף Google Cloud .

    מעבר אל "דומיינים של נתונים"

  2. בוחרים את הדומיין שרוצים ליצור לו תת-דומיין.

  3. לוחצים על יצירת תת-דומיין של נתונים ומזינים את הפרטים הבאים:

    • בשדה שם לתצוגה, מציינים שם ידידותי למשתמש לדומיין. לדוגמה, Finance.
    • בשדה Data Domain ID (מזהה דומיין נתונים), מציינים מזהה ייחודי לדומיין. אי אפשר לשנות את הערך הזה אחרי שהמערכת יוצרת את הדומיין.
    • אופציונלי: בשדה Description, מזינים תיאור קצר של הדומיין.
    • בשדה בעלים, מוסיפים את כתובת האימייל של הבעלים של הדומיין. אפשר להזין כמה כתובות אימייל בו-זמנית.
  4. אופציונלי: בשדה Labels, מזינים תוויות כדי לקבץ אובייקטים קשורים יחד או עם משאבים אחרים של Google Cloud .

  5. לוחצים על יצירה. יכול להיות שיעברו כמה דקות עד שתוכלו לגשת לתת-הדומיין של הנתונים או לחפש בו.

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 במשאב שנמצא בדומיין.

הענקת גישה לדומיין נתונים

המסוף

כדי לתת גישה לדומיין נתונים, פועלים לפי השלבים הבאים:

  1. נכנסים לדף Data domains במסוף Google Cloud .

    מעבר אל "דומיינים של נתונים"

  2. לוחצים על שם הדומיין כדי לעבור לדף פרטי הדומיין.

  3. בסרגל העליון, לוחצים על הרשאות.

  4. לוחצים על Add principal.

  5. בשדה New principals, מזינים את כתובת האימייל של חשבון המשתמש.

  6. בשדה Select a role (בחירת תפקיד), בוחרים את התפקיד בדומיין הנתונים. לדוגמה, אפשר להשתמש ב-Dataplex Data Domain Entry Reader כדי לאפשר למשתמש לגלות את דומיין הנתונים, את תת-הדומיינים שלו ואת המטא-נתונים של המשאבים הכלולים, ולצפות בהם. אם רוצים להקצות עוד תפקידים, לוחצים על הוספת תפקיד נוסף.

  7. לוחצים על 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) ותגובה ריקה.

ביטול הגישה לדומיין נתונים

כדי להסיר תפקיד או הרשאה מחשבון ראשי, פועלים לפי השלבים הבאים:

המסוף

  1. נכנסים לדף Data domains במסוף Google Cloud .

    מעבר אל "דומיינים של נתונים"

  2. לוחצים על שם הדומיין כדי לעבור לדף פרטי הדומיין.

  3. בסרגל העליון, לוחצים על הרשאות.

  4. בחלונית Permissions, מאתרים את חשבון המשתמש שרוצים לבטל את התפקיד שלו.

  5. לוחצים על סמל המחיקה לצד התפקיד שרוצים להסיר.

  6. לוחצים על Save.

REST

כדי לבטל גישה לדומיין נתונים באמצעות API בארכיטקטורת REST, צריך לאחזר את המדיניות הקיימת באמצעות ה-method‏ projects.locations.dataDomains.getIamPolicy, להסיר את התפקיד או את הישות המורשית מהרשימה bindings ולהגדיר את המדיניות המעודכנת באמצעות ה-method‏ projects.locations.dataDomains.setIamPolicy:

  1. קבלת מדיניות ה-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) ותגובה ריקה.

  2. הגדרת המדיניות המעודכנת:

    לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

    • 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) ותגובה ריקה.

המאמרים הבאים