הגדרת בקרת גישה מבוססת-תפקידים

בשלבים הבאים מוסבר איך להגדיר בקרת גישה מבוססת-תפקידים (RBAC) ב-Kf Space.

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

לפני שממשיכים לשלבים הבאים, צריך לפעול לפי המדריך בנושא RBAC ב-GKE.

הגדרת ניהול הזהויות והרשאות הגישה (IAM)

בנוסף להרשאות שניתנות דרך Kf RBAC, משתמשים, קבוצות או חשבונות שירות צריכים גם לעבור אימות כדי להציג אשכולות GKE ברמת הפרויקט. הדרישה הזו זהה לדרישה להגדרת RBAC ב-GKE, כלומר למשתמשים או לקבוצות צריכה להיות לפחות הרשאת IAM‏ container.clusters.get בפרויקט שמכיל את האשכול. ההרשאה הזו כלולה בתפקיד container.clusterViewer ובתפקידים אחרים עם הרשאות גבוהות יותר. למידע נוסף, אפשר לעיין במאמר אינטראקציה עם ניהול זהויות והרשאות גישה.

מקצים את container.clusterViewer למשתמש או לקבוצה.

gcloud projects add-iam-policy-binding ${CLUSTER_PROJECT_ID} \
  --role="container.clusterViewer" \
  --member="${MEMBER}"

ערכים לדוגמה של חברי מועדון:

  • user:test-user@gmail.com
  • group:admins@example.com
  • serviceAccount:test123@example.domain.com

ניהול חברי מרחב בתור מנהלי מרחב

התפקיד 'אדמין אשכול' או חברים עם התפקיד SpaceManager יכולים להקצות תפקיד למשתמש, לקבוצה או לחשבון שירות.

kf set-space-role MEMBER -t [Group|ServiceAccount|User]

משתמשים עם התפקיד אדמין באשכול או עם התפקיד SpaceManager יכולים להסיר משתמשים מתפקיד.

kf unset-space-role MEMBER -t [Group|ServiceAccount|User]

אתם יכולים לראות את המשתתפים במרחב ואת התפקידים שלהם.

kf space-users

דוגמאות:

מקצים למשתמש את התפקיד SpaceDeveloper.

kf set-space-role alice@example.com SpaceDeveloper

מקצים את התפקיד SpaceDeveloper לקבוצה.

kf set-space-role devs@example.com SpaceDeveloper -t Group

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

kf set-space-role sa-dev@example.domain.com SpaceDeveloper -t ServiceAccount

פיתוח אפליקציות בתור SpaceDeveloper

משתמשים עם התפקיד SpaceDeveloper יכולים לבצע פעולות פיתוח של אפליקציות Kf במרחב.

כדי להעביר אפליקציה:

kf push app_name -p [PATH_TO_APP_ROOT_DIRECTORY]

כדי לראות את היומנים של אפליקציה: posix-terminal kf logs app_name

מתחברים ל-Pod ב-Kubernetes שבו האפליקציה פועלת באמצעות SSH: posix-terminal kf ssh app_name

להצגת מתווכי השירותים הזמינים:

kf marketplace

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

משתתפים עם התפקידים SpaceManager או SpaceAuditor יכולים לראות את האפליקציות שזמינות במרחב:

kf apps

הצגת מרחבי Kf באשכול

כל התפקידים (SpaceManager,‏ SpaceDeveloper ו-SpaceAuditor) יכולים לראות את מרחבי ה-Kf שזמינים באשכול:

kf spaces

אפשר לראות את המשתתפים במרחב ואת התפקידים שלהם במרחב.

kf space-users

סימונים של התחזות

כדי לאמת את ההרשאות של חבר באחסון השיתופי, חבר עם הרשאות גבוהות יותר יכול לבדוק את ההרשאות של חבר אחר באמצעות הדגלים של התחזות: --as ו---as-group.

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

kf push APP_NAME --as bob

מוודאים שלקבוצה (manager-group@example.com) יש הרשאה להקצות הרשאות לחברים אחרים.

kf set-space-role bob SpaceDeveloper --as-group manager-group@example.com