למנהלי דומיין יש כמה אמצעי בקרה לניהול התכונות והאפליקציות שהמשתמשים בדומיין יכולים לגשת אליהם. בדף הזה מתוארות התכונות האלה, איך הן עשויות להשפיע על שילוב חיצוני או להיות שימושיות לו, ובקשות API רלוונטיות.
ניהול הגישה של משתמשים מתחת לגיל 18 לאפליקציות של צד שלישי
אדמינים צריכים להגדיר אפליקציות של צד שלישי במסוף Google Admin עבור משתמשים מתחת לגיל 18. אם אדמין לא הגדיר אפליקציה, משתמשים מתחת לגיל 18 לא יוכלו לגשת לאפליקציה הזו באמצעות חשבון Google Workspace for Education שלהם.
מפתחים שיוצרים אפליקציות למשתמשי Google Workspace for Education מתחת לגיל 18 לא נדרשים לבצע פעולה כלשהי. רק אדמינים יכולים להגדיר אפליקציות של צד שלישי דרך ממשק המשתמש של מסוף Admin, ולא ניתן לעשות זאת באופן אוטומטי.
הקצאת תפקידי אדמין בהתאמה אישית לתכונות של Classroom
אדמינים יכולים ליצור תפקידי אדמין בהתאמה אישית במסוף Admin כדי לאפשר לאנשים או לקבוצות מסוימים עם רישיון Education Plus:
צפייה בניתוח הנתונים של Classroom כדי להבין נתונים כמו השלמת מטלות, מגמות ציונים ואימוץ של Classroom.
גישה זמנית לכיתות ב-Classroom בלי להקצות מורה עמית/ה קבוע/ה.
במדריך הזה מוסבר איך להגדיר את התכונות האלה בדומיין באמצעות ממשקי API של Google.
אוטומציה של תהליך הקצאת תפקידים בהתאמה אישית
במדריך הזה נסביר איך לבצע את השלבים הבאים כדי להפוך את תהליך הקצאת התפקידים המותאמים אישית לאוטומטי:
- ליצור קבוצות אבטחה כדי לסדר את המשתמשים שיכולים לגשת לתכונות האלה.
- מוסיפים חברים לקבוצות.
- כדי ליצור תפקיד אדמין בהתאמה אישית, בוחרים את ההרשאה המתאימה.
- אחזור מזהים של יחידות ארגוניות.
- מחילים את תפקיד האדמין בהתאמה אישית על הקבוצות החדשות שנוצרו.
דרישות מוקדמות
- כדי להבין איך להגדיר ולהריץ אפליקציה באמצעות Google APIs בשפות כמו JavaScript, Python ו-Java, אפשר לקרוא את המדריכים למתחילים.
- לפני שמשתמשים באחד מממשקי Cloud Identity API שמתוארים במדריך הזה, צריך להגדיר את Cloud Identity. ממשקי ה-API האלה משמשים ליצירת קבוצות כדי להקצות הרשאות אדמין.
- אם רוצים להעניק גישה לתפקיד בהתאמה אישית לקבוצת משתמשים במקום למשתמש ספציפי, אפשר לקרוא את הסקירה הכללית של Groups API ולהגדיר את Groups API.
יצירת קבוצות אבטחה
יוצרים קבוצת אבטחה באמצעות השיטה groups.create
. אפשר להגדיר קבוצה כקבוצת אבטחה אם תווית האבטחה כלולה בשדה labels
של הבקשה. מידע נוסף על יצירה של קבוצות אבטחה והגבלות בנושא זמין במדריך יצירה של קבוצות אבטחה.
POST https://cloudidentity.googleapis.com/v1/groups
אפשר גם לכלול את פרמטר השאילתה InitialGroupConfig
כדי לאתחל את הבעלים של הקבוצה:
POST https://cloudidentity.googleapis.com/v1/groups&initialGroupConfig={initialGroupConfig}
לחשבון שממנו נשלחת הבקשה הזו צריך להיות אחד מההיקפים הבאים:
https://www.googleapis.com/auth/cloud-identity.groups
https://www.googleapis.com/auth/cloud-identity
https://www.googleapis.com/auth/cloud-platform
גוף הבקשה
גוף הבקשה מכיל את הפרטים של הקבוצה שרוצים ליצור. הערך של customerId
חייב להתחיל באות 'C' (לדוגמה, C046psxkn
). איפה נמצא מספר הלקוח
{
parent: "customers/<customer-id>",
description: "This is the leadership group of school A.",
displayName: "Leadership School A",
groupKey: {
id: "leadership_school_a@example.com"
},
labels: {
"cloudidentity.googleapis.com/groups.security": "",
"cloudidentity.googleapis.com/groups.discussion_forum": ""
}
}
תשובה
התשובה מכילה מופע חדש של המשאב Operation
.
{
done: true,
response: {
@type: "type.googleapis.com/google.apps.cloudidentity.groups.v1.Group",
name: "groups/<group-id>", // unique group ID
groupKey: {
id: "leadership_school_a@example.com" // group email address
},
parent: "customers/<customer-id>",
displayName: "Leadership School A",
description: "This is the leadership group of school A.",
createTime: "<created time>",
updateTime: "<updated time>",
labels: {
"cloudidentity.googleapis.com/groups.security": "",
"cloudidentity.googleapis.com/groups.discussion_forum": ""
}
}
}
הוסף חברי קבוצה
אחרי שיוצרים את הקבוצה, השלב הבא הוא להוסיף חברים. חבר בקבוצה יכול להיות משתמש או קבוצת אבטחה אחרת. אם מוסיפים קבוצה כחברה בקבוצה אחרת, יכול להיות שיהיה עיכוב של עד 10 דקות בהפצת החברות. בנוסף, ה-API מחזיר שגיאה לגבי מחזורי חיוב בחברות בקבוצות. לדוגמה, אם group1
הוא חבר בקבוצה group2
, אז group2
לא יכול להיות חבר בקבוצה group1
.
כדי להוסיף חבר לקבוצה, משתמשים בבקשת POST הבאה לשיטה members.insert
של Directory API:
POST https://admin.googleapis.com/admin/directory/v1/groups/{groupKey}/members
פרמטר הנתיב groupKey
הוא כתובת האימייל של הקבוצה של החבר החדש או המזהה הייחודי של הקבוצה.
לחשבון ששולח את בקשת ה-POST צריכה להיות אחת מההרשאות הבאות:
https://apps-apis.google.com/a/feeds/groups/
https://www.googleapis.com/auth/admin.directory.group
https://www.googleapis.com/auth/admin.directory.group.member
גוף הבקשה
גוף הבקשה מכיל פרטים של member
שייווצר.
{
email: "person_one@example.com",
role: "MEMBER", // can be `MEMBER`, `OWNER`, `MANAGER`
}
תשובה
התשובה מכילה את המופע החדש של החבר.
{
kind: "admin#directory#member",
etag: "<etag-value>", // role's unique ETag
id: "4567", // group member's unique ID
email: "person_one@example.com",
role: "MEMBER",
type: "GROUP",
status: "ACTIVE"
}
צריך לשלוח בקשה כזו לכל משתמש שרוצים להוסיף כחבר. אפשר לקבץ את הבקשות האלה כדי לצמצם את מספר חיבורי ה-HTTP שהלקוח יוצר.
יצירת תפקיד אדמין בהתאמה אישית עם הרשאות מיוחדות
Directory API מאפשר לכם להשתמש בבקרת גישה מבוססת-תפקידים (RBAC) כדי לנהל את הגישה לתכונות בדומיין שלכם ב-Google Workspace. אתם יכולים ליצור תפקידים בהתאמה אישית עם הרשאות כדי להגביל את גישת האדמין בצורה ספציפית יותר מהתפקידים המובנים שזמינים ב-Google Workspace. אפשר להקצות תפקידים למשתמשים או לקבוצות אבטחה. מידע מפורט יותר על המגבלות של יצירת תפקידים זמין במאמר מגבלות על תפקידים בהתאמה אישית והקצאת תפקידים.
כדי ליצור תפקיד חדש, משתמשים בבקשת POST הבאה לשיטה roles.insert
של Directory API:
POST https://admin.googleapis.com/admin/directory/v1/customer/{customer}/roles
ה-customerId
זהה לזה שבו השתמשנו בשלב 1 במדריך הזה.
החשבון ששולח את בקשת ה-POST צריך לקבל את ההיקף הבא:
https://www.googleapis.com/auth/admin.directory.rolemanagement
גוף הבקשה
גוף הבקשה מכיל פרטים של role
שייווצר. מוסיפים privilegeName
ו-serviceId
לכל הרשאה שרוצים להעניק לתפקיד הזה.
ניתוח נתונים של Classroom
כדי ליצור תפקיד בהתאמה אישית עם גישה לנתוני Analytics, צריך הרשאת EDU_ANALYTICS_DATA_ACCESS
, וההרשאה serviceId
צריכה להיות מוגדרת לערך 019c6y1840fzfkt
.
{
roleName: "Education Admin", // customize as needed
roleDescription: "Access to view analytics data", // customize as needed
rolePrivileges: [
{
privilegeName: "EDU_ANALYTICS_DATA_ACCESS",
serviceId: "019c6y1840fzfkt"
}
]
}
גישה זמנית לכיתה
כדי ליצור תפקיד בהתאמה אישית עם גישה זמנית לכיתות, צריך את ההרשאה ADMIN_OVERSIGHT_MANAGE_CLASSES
, וגם את ההרשאה serviceId
שמוגדרת לערך 019c6y1840fzfkt
.
{
roleName: "Education Admin", // customize as needed
roleDescription: "Access to manage classes privilege", // customize as needed
rolePrivileges: [
{
privilegeName: "ADMIN_OVERSIGHT_MANAGE_CLASSES",
serviceId: "019c6y1840fzfkt"
}
]
}
מבצעים קריאה ל-method privileges.list
כדי לאחזר רשימה של privilegeIds
ושל serviceIds
.
תשובה
התשובה תכיל את המופע החדש של התפקיד.
ניתוח נתונים של Classroom
{
kind: "admin#directory#role",
etag: "<etag-value>", // role's unique ETag
roleId: "<role-id>", // role's unique ID
roleName: "Education Admin",
roleDescription: "Access to view analytics data",
rolePrivileges: [
{
privilegeName: "EDU_ANALYTICS_DATA_ACCESS",
serviceId: "019c6y1840fzfkt"
}
],
isSystemRole: false,
isSuperAdminRole: false
}
גישה זמנית לכיתה
{
kind: "admin#directory#role",
etag: "<etag-value>", // role's unique ETag
roleId: "<role-id>", // role's unique ID
roleName: "Education Admin",
roleDescription: "Access to manage classes privilege",
rolePrivileges: [
{
privilegeName: "ADMIN_OVERSIGHT_MANAGE_CLASSES",
serviceId: "019c6y1840fzfkt"
}
],
isSystemRole: false,
isSuperAdminRole: false
}
אחזור מזהים של יחידות ארגוניות
אפשר להגביל את הגישה של תפקיד אדמין מותאם אישית ליחידה ארגונית אחת או יותר באמצעות מזהה היחידה הארגונית. משתמשים ב-OrgUnit API כדי לאחזר את orgUnitId
.
ניתוח נתונים של Classroom
מומלץ לבחור יחידה ארגונית של תלמידים וגם יחידה ארגונית של מורים כשמקצים תפקיד אדמין בהתאמה אישית למשתמש או לקבוצה ספציפיים. הפעולה הזו מאפשרת למשתמשים שהוקצתה להם הרשאת אדמין בהתאמה אישית לגשת לנתונים ברמת התלמיד והכיתה ביחידות הארגוניות. אם היחידה הארגונית של התלמידים לא נכללת, למשתמשים המורשים לא תהיה גישה לנתוני התלמידים. אם לא מציינים את היחידה הארגונית של המורה, למשתמשים המורשים לא תהיה גישה לנתונים ברמת הכיתה.
גישה זמנית לכיתה
אתם יכולים להגביל את ההרשאות לגישה זמנית לכיתות על ידי מתן גישה לכיתות ביחידות ארגוניות ספציפיות למשתמשים עם תפקיד אדמין בהתאמה אישית. אם מגבילים את הגישה ליחידה ארגונית, הקבוצה שהוקצה לה תפקיד אדמין בהתאמה אישית יכולה לגשת רק לכיתות שהמורה הראשי שלהן נמצא באותה יחידה ארגונית.
הקצאת תפקיד אדמין בהתאמה אישית
כדי להקצות לקבוצה את תפקיד האדמין בהתאמה אישית, משתמשים בבקשת ה-POST הבאה. במאמר הגבלות על תפקידים בהתאמה אישית והקצאת תפקידים מוסבר על מגבלות הקצאת תפקידים.
Directory API roleAssignments.insert
:
POST https://admin.googleapis.com/admin/directory/v1/customer/{customer}/roleassignments
הקצאה לקבוצה או למשתמש ספציפי
אם מקצים את ההרשאה לקבוצה, צריך לכלול את groupId
בשדה assignedTo
בגוף הבקשה. ה-groupId
הושג בשלב יצירת קבוצות אבטחה. אם מקצים את ההרשאה למשתמש ספציפי, צריך לכלול את מזהה המשתמש בשדה assignedTo
בגוף הבקשה. אפשר לאחזר את מזהה המשתמש באמצעות קריאה ל-users.get
והגדרת כתובת האימייל של המשתמש כפרמטר userKey
, או באמצעות קריאה ל-users.list
.
החשבון ששולח את בקשת ה-POST צריך לקבל את ההיקף הבא:
https://www.googleapis.com/auth/admin.directory.rolemanagement
גוף הבקשה
גוף הבקשה מכיל פרטים של RoleAssignment
שייווצר. צריך לשלוח בקשה אחת לכל יחידה ארגונית שרוצים לשייך לקבוצה הזו.
{
roleId: "<role-id>", // role's unique ID obtained from Step 3
assignedTo: "<id>", // group ID or user ID
scopeType: "ORG_UNIT", // can be `ORG_UNIT` or `CUSTOMER`
orgUnitId: "<org-unit-id>" // organizational unit ID referenced in Step 4
}
תשובה
התשובה מכילה את המופע החדש של RoleAssignment
.
{
kind: "admin#directory#roleAssignment",
etag: "<etag-value>",
roleAssignmentId: "<role-assignment-id>",
roleId: "<role-id>",
assignedTo: "<group-id or user-id>",
assigneeType: "GROUP",
scopeType: "ORG_UNIT",
orgUnitId: "<org-unit-id>"
}
משאבים
מידע נוסף זמין בכתובת:
- סקירה כללית של Directory API
- אימות והרשאה ספציפיים ל-Directory API
- מסמכי תיעוד של Directory API REST
- תמיכה למפתחים ב-Admin SDK API