ניהול זהויות והרשאות גישה (IAM) מאפשר לכם לשלוט בגישה למשאבים של הפרויקט. במסמך הזה נתמקד בהרשאות IAM שרלוונטיות ל-Serverless for Apache Spark ובתפקידי IAM שמעניקים את ההרשאות האלה.
הרשאות Dataproc ל-Serverless for Apache Spark
ההרשאות ב-Dataproc מאפשרות למשתמשים ולחשבונות שירות לבצע פעולות במשאבים של Serverless for Apache Spark. לדוגמה, ההרשאה dataproc.batches.create מאפשרת ליצור עומסי עבודה של אצווה בפרויקט.
המשתמשים לא מקבלים הרשאות בצורה ישירה. כדי להעניק להם הרשאות, צריך להקצות להם תפקידי IAM שמוגדרת להם הרשאה אחת או יותר. אפשר להעניק תפקידים מוגדרים מראש שכוללים רשימה של הרשאות, או ליצור ולהעניק תפקידים בהתאמה אישית שכוללים הרשאה אחת או יותר שאתם בוחרים לכלול בתפקיד.
בטבלאות הבאות מפורטות ההרשאות הבסיסיות שנדרשות כדי לקרוא ל-Dataproc APIs (methods) שיוצרים משאבים של Serverless for Apache Spark או ניגשים אליהם. הטבלאות מסודרות לפי ממשקי ה-API שמשויכים לכל משאב Serverless for Apache Spark, כולל batches, sessions, sessionTemplates ו-operations.
דוגמאות:
- ההרשאה
dataproc.batches.createמאפשרת ליצור חבילות בפרויקט שמכיל את מערך הנתונים. -
dataproc.sessions.createמאפשר ליצור סשנים אינטראקטיביים בפרויקט המכיל.
הרשאות בכמות גדולה
| Method | ההרשאות הנדרשות |
|---|---|
| projects.locations.batches.create | dataproc.batches.create 1 |
| projects.locations.batches.delete | dataproc.batches.delete |
| projects.locations.batches.get | dataproc.batches.get |
| projects.locations.batches.list | dataproc.batches.list |
1 נדרשות גם הרשאות dataproc.batches.get ו-dataproc.operations.get כדי לאפשר ל-dataproc.batches.create לקבל עדכוני סטטוס מכלי שורת הפקודה gcloud.
הרשאות סשן
| Method | ההרשאות הנדרשות |
|---|---|
| projects.locations.sessions.create | dataproc.sessions.create 1 |
| projects.locations.sessions.delete | dataproc.sessions.delete |
| projects.locations.sessions.get | dataproc.sessions.get |
| projects.locations.sessions.list | dataproc.sessions.list |
| projects.locations.sessions.terminate | dataproc.sessions.terminate |
1 נדרשות גם הרשאות dataproc.sessions.get ו-dataproc.operations.get כדי לאפשר ל-dataproc.sessions.create לקבל עדכוני סטטוס מכלי שורת הפקודה gcloud.
הרשאות לתבנית של סשן
| Method | ההרשאות הנדרשות |
|---|---|
| projects.locations.sessionTemplates.create | dataproc.sessionTemplates.create 1 |
| projects.locations.sessionTemplates.delete | dataproc.sessionTemplates.delete |
| projects.locations.sessionTemplates.get | dataproc.sessionTemplates.get |
| projects.locations.sessionTemplates.list | dataproc.sessionTemplates.list |
| projects.locations.sessionTemplates.update | dataproc.sessionTemplates.update |
1 נדרשות גם הרשאות dataproc.sessionTemplates.get ו-dataproc.operations.get כדי לאפשר ל-dataproc.sessionTemplates.create לקבל עדכוני סטטוס מכלי שורת הפקודה gcloud.
הרשאות לפעולות
| Method | ההרשאות הנדרשות |
|---|---|
| projects.regions.operations.get | dataproc.operations.get |
| projects.regions.operations.list | dataproc.operations.list |
| projects.regions.operations.cancel 1 | dataproc.operations.cancel |
| projects.regions.operations.delete | dataproc.operations.delete |
| projects.regions.operations.getIamPolicy | dataproc.operations.getIamPolicy |
| projects.regions.operations.setIamPolicy | dataproc.operations.setIamPolicy |
1 כדי לבטל פעולות בכמות גדולה, נדרשת גם הרשאת dataproc.batches.cancel ל-dataproc.operations.cancel.
הרשאות זמן ריצה ב-Serverless ל-Apache Spark 3.0 ואילך
ההרשאות הבאות חלות על Serverless ל-Apache Spark 3.0 ועל גרסאות מאוחרות יותר של סביבות זמן ריצה.
הרשאות לעומסי עבודה
| Method | ההרשאות הנדרשות |
|---|---|
| dataprocrm.v1.dataprocrm.projects.locations.workloads.create | dataprocrm.workloads.create |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.cancel | dataprocrm.workloads.cancel |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.delete | dataprocrm.workloads.delete |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.get | dataprocrm.workloads.get |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.list | dataprocrm.workloads.list |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.use | dataprocrm.workloads.use |
הרשאות NodePools
| Method | ההרשאות הנדרשות |
|---|---|
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.create | dataprocrm.nodePools.create |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.delete | dataprocrm.nodePools.delete |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.resize | dataprocrm.nodePools.resize |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.deleteNodes | dataprocrm.nodePools.deleteNodes |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.update | dataprocrm.nodePools.update |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.get | dataprocrm.nodePools.get |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.list | dataprocrm.nodePools.list |
הרשאות של צמתים
| Method | ההרשאות הנדרשות |
|---|---|
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.create | dataprocrm.nodes.create |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.delete | dataprocrm.nodes.delete |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.update | dataprocrm.nodes.update |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.heartbeat | dataprocrm.nodes.heartbeat |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.get | dataprocrm.nodes.get |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.list | dataprocrm.nodes.list |
| dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.mintOAuthToken | dataprocrm.nodes.mintOAuthToken |
הרשאות לפעולות
| Method | ההרשאות הנדרשות |
|---|---|
| dataprocrm.v1.dataprocrm.projects.locations.operations.get | dataprocrm.operations.get |
| dataprocrm.v1.dataprocrm.projects.locations.operations.list | dataprocrm.operations.list |
דרישות התפקיד ב-Serverless for Apache Spark
בטבלה הבאה מפורטים התפקידים שכוללים את ההרשאות שנדרשות לניהול עומסי עבודה וסשנים של עיבוד באצווה. הדרישות משתנות בהתאם לגרסת זמן הריצה של האצווה או הסשן, ולשאלה אם האצווה או הסשן פועלים עם חשבון שירות או עם פרטי כניסה של משתמש קצה (EUC).
| גרסת זמן ריצה | תפקידי IAM |
|---|---|
pre-3.0 |
מקצים למשתמשים את התפקידים הבאים:
|
+3.0 |
מקצים למשתמשים את התפקידים הבאים:
|
הערות:
כששולחים עומס עבודה של אצווה או יוצרים סשן אינטראקטיבי עם סביבת זמן ריצה של
3.0+ופרטי כניסה של משתמש קצה (ברירת המחדל בגרסה 3.0 ואילך), פעולות המערכת במישור הנתונים מבוצעות על ידי Dataproc מנהל המשאבים סוכן שירות צומת. מידע נוסף מופיע במאמר חשבון שירות של סוכן שירות בזמן ריצה בגרסה 3.0 ואילך.לצורך תאימות לאחור, אפשר להעניק את התפקידים הקודמים Dataproc Editor ו-Dataproc Viewer עם
3.0+סביבות ריצה במקום התפקידים Dataproc Serverless Editor ו-Dataproc Serverless Viewer. אפשר גם להעניק את התפקיד Dataproc Worker במקום התפקיד Dataproc Serverless Node.אם לחשבון שירות הוקצה התפקיד עריכה בפרויקט, הוא כולל את ההרשאות שכלולות בתפקיד Dataproc Worker.
מידע נוסף זמין במאמר בנושא חשבונות שירות של Serverless for Apache Spark.
האם צריך להקצות תפקידים?
יכול להיות שהתפקיד הנדרש כבר הוענק לכם, בהתאם למדיניות הארגון.
בדיקת התפקידים שהוקצו למשתמשים
כדי לראות אם למשתמש מסוים הוקצה תפקיד, פועלים לפי ההוראות במאמר ניהול הגישה לפרויקטים, לתיקיות ולארגונים > הצגת הגישה הנוכחית.
בדיקת התפקידים שניתנו לחשבונות שירות
כדי לבדוק אם לחשבון שירות הוקצה תפקיד, אפשר לעיין במאמר הצגה וניהול של תפקידי IAM בחשבון שירות.
בדיקת התפקידים שניתנו לחשבון שירות
כדי לבדוק אם למשתמש מסוים הוקצה תפקיד בחשבון שירות, פועלים לפי ההוראות במאמר ניהול הגישה לחשבונות שירות > הצגת הגישה הנוכחית.
חיפוש תפקידים והרשאות ב-Dataproc
אפשר להשתמש בקטעים הבאים כדי לחפש תפקידים והרשאות ב-Dataproc.
| Role | Permissions |
|---|---|
Dataproc Administrator( Full control of Dataproc resources. |
|
Dataproc Editor( Provides the permissions necessary for viewing the resources required to manage Dataproc, including machine types, networks, projects, and zones. Lowest-level resources where you can grant this role:
|
|
Dataproc Hub Agent( Allows management of Dataproc resources. Intended for service accounts running Dataproc Hub instances. |
|
Dataproc Serverless Editor( Permissions needed to run serverless sessions and batches as a user |
|
Dataproc Serverless Node.( Node access to Dataproc Serverless sessions and batches. Intended for service accounts. |
|
Dataproc Serverless Viewer( Permissions needed to view serverless sessions and batches |
|
Dataproc Service Agent( Gives Dataproc Service Account access to service accounts, compute resources, storage resources, and kubernetes resources. Includes access to service accounts. |
|
Dataproc Viewer( Provides read-only access to Dataproc resources. Lowest-level resources where you can grant this role:
|
|
Dataproc Worker( Provides worker access to Dataproc resources. Intended for service accounts. |
|
תפקידים בפרויקט
אפשר גם להגדיר הרשאות ברמת הפרויקט באמצעות תפקידי פרויקט ב-IAM. בטבלה הבאה מפורטות ההרשאות שמשויכות לתפקידים בפרויקט ב-IAM:
| תפקיד בפרויקט | הרשאות |
|---|---|
| צפייה בחשבון לחיוב | כל ההרשאות בפרויקט לפעולות קריאה בלבד ששומרות את המצב (get, list) |
| עריכת פרויקטים | כל ההרשאות של Project Viewer וגם כל ההרשאות בפרויקט לפעולות שמשנות מצבים (יצירה, מחיקה, עדכון, שימוש, ביטול, עצירה, הפעלה) |
| בעלי הפרויקט | כל ההרשאות של עורך פרויקט, בנוסף להרשאות לניהול בקרת הגישה לפרויקט (קבלת/הגדרת IamPolicy) ולהגדרת החיוב על הפרויקט |