ניהול מדיניות הגישה

אפשר להגדיר או לקבל את מדיניות ניהול הזהויות והרשאות הגישה (IAM) או את מדיניות בקרת הגישה עבור בדיקת קישוריות אחת או יותר. בנוסף, אפשר לראות את ההרשאות שיש למשתמש או לחשבון שירות לבדיקת קישוריות ספציפית.

במאמר הזה מוצגות דוגמאות לבקרת גישה שמשתמשות ב-Network Management API. כדי לבצע את השלבים האלה במסוף Google Cloud או באמצעות פקודות gcloud, אפשר לעיין במדריכים בנושא IAM.

מידע על קישורי מדיניות ו-etags שמופיעים בפקודות הבאות זמין במאמר הפניית API למדיניות IAM.

במאמר תפקידים והרשאות מוסבר על התפקידים וההרשאות ב-IAM שנדרשים להפעלת בדיקות קישוריות.

הגדרת מדיניות בקרת גישה

בפרוצדורה הזו מגדירים את מדיניות בקרת הגישה במשאב בדיקות קישוריות שצוין.

API

משתמשים ב-method networkmanagement.connectivitytests.setIamPolicy כדי להגדיר את מדיניות בקרת הגישה ל-USER, ROLE ו-TEST_ID.

בדוגמה הבאה מוגדרת מדיניות שמקשרת את התפקיד networkmanagement.admin ל-username@yourcompany.com עבור mytest-1.

 POST https: //networkmanagement.googleapis.com/v1/{resource=projects/*/locations/global/connectivityTests/TEST_ID}:setIamPolicy
   {
     "version": "VERSION",
     "etag": "ETAG",
     "bindings": [{
       "role": "ROLE",
       "members": [
         "PRINCIPAL"
       ]
     }]
   }

מחליפים את הערכים הבאים:

  • TEST_ID: המזהה של אובייקט בדיקות הקישוריות (test) שאתם מריצים
  • VERSION: מציין את הפורמט של המדיניות. הערכים התקינים הם 0,‏ 1 ו-3. בכל פעולה שמשפיעה על שיוך תפקידים מותנה צריך לציין את גרסה 3.
  • ETAG: משמש לבקרת בו-זמניות אופטימית כדרך לסייע במניעת מצב שבו עדכונים בו-זמניים של מדיניות יחליפו זה את זה (דוגמה ל-etag היא BwWbrqiZFRs=)
  • ROLE: תפקיד שמוקצה לחשבונות משתמש (לדוגמה, roles/networkmanagement.admin)
  • PRINCIPAL: מציין את הזהויות שמבקשות גישה ל Google Cloud משאב (לדוגמה, user:username@yourcompany.com). לרשימה של סוגי חשבונות משתמשים או חברים, אפשר לעיין בהפניית ה-API למדיניות IAM.

אחזור של מדיניות בקרת גישה

בתהליך הזה מקבלים את מדיניות בקרת הגישה למשאב בדיקות קישוריות שצוין.

API

משתמשים ב-method networkmanagement.connectivitytests.getIamPolicy כדי להגדיר את מדיניות בקרת הגישה ל-PRINCIPAL, ROLE ו-TEST_ID.

בדוגמה הבאה מקבלים מדיניות שמקשרת את התפקיד networkmanagement.admin ל-username@yourcompany.com עבור mytest-1.

  GET https: //networkmanagement.googleapis.com/v1/{resource=projects/*/locations/global/connectivityTests/TEST_ID}:getIamPolicy
    {
      "version": "VERSION",
      "etag": "ETAG",
      "bindings": [{
        "role": "ROLE",
        "members": [
          "PRINCIPAL"
        ]
      }]
    }

מחליפים את הערכים הבאים:

  • TEST_ID: המזהה של אובייקט בדיקות הקישוריות (הבדיקה) שאתם מריצים
  • VERSION: מציין את הפורמט של המדיניות. הערכים התקינים הם 0,‏ 1 ו-3. בכל פעולה שמשפיעה על שיוך תפקידים מותנה צריך לציין את גרסה 3.
  • ETAG: משמש לבקרת בו-זמניות אופטימית, כדי למנוע מצב שבו עדכונים בו-זמניים של מדיניות יחליפו זה את זה (דוגמה ל-etag היא BwWbrqiZFRs=)
  • ROLE: תפקיד שמוקצה לחשבונות משתמש (לדוגמה, roles/networkmanagement.admin)
  • PRINCIPAL: מציין את הזהויות שמבקשות גישה למשאב Google Cloud (לדוגמה,user:username@yourcompany.com). לרשימה של סוגי חשבונות משתמשים, אפשר לעיין בהפניית ה-API למדיניות IAM.

בדיקת הרשאות IAM

הפרוצדורה הזו מחזירה את ההרשאות שיש למשתמש או לחשבון שירות במשאב בדיקות קישוריות.

API

משתמשים ב-method‏ networkmanagement.connectivitytests.testIamPermissions כדי להחזיר את ההרשאות שהוקצו ל-TEST_ID.

בדוגמה הבאה אפשר לראות איך בודקים אם למשתמש username@yourcompany.com יש את ההרשאה networkmanagement.connectivitytests.get עבור mytest-1.

  POST https://networkmanagement.googleapis.com/v1/{resource=projects/*/locations/global/connectivityTests/TEST_ID}:testIamPermissions
    {
      "permissions": [
        "networkmanagement.connectivitytests.get"
      ]
    }

מחליפים את TEST_ID במזהה של אובייקט בדיקות הקישוריות (test) שאתם מריצים.

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