Yönetici işlemleri

Alan yöneticileri, alanlarındaki kullanıcıların erişebileceği özellikleri ve uygulamaları yönetmek için çeşitli denetimlere sahiptir. Bu sayfada, söz konusu özellikler, bunların harici bir entegrasyonu nasıl etkileyebileceği veya harici entegrasyon için nasıl faydalı olabileceği ve ilgili API istekleri açıklanmaktadır.

18 yaşından küçük kullanıcıların üçüncü taraf uygulamalarına erişimini yönetme

Yöneticiler, 18 yaşından küçük kullanıcılar için Google Yönetici Konsolu'nda üçüncü taraf uygulamalarını yapılandırmalıdır. Bir yönetici uygulamayı yapılandırmadıysa 18 yaşından küçük kullanıcılar, Google Workspace for Education hesaplarıyla bu uygulamaya erişemez.

18 yaşından küçük Google Workspace for Education kullanıcıları için uygulama geliştiren geliştiricilerin herhangi bir işlem yapması gerekmez. Üçüncü taraf uygulamalarının yapılandırılması yalnızca Yönetici Konsolu kullanıcı arayüzündeki yöneticiler tarafından yapılabilir ve programatik olarak yapılamaz.

Classroom özellikleri için özel yönetici rolleri belirleme

Yöneticiler, özel yönetici rolleri oluşturarak Yönetici Konsolu'nda Education Plus lisansına sahip belirli kişilerin veya grupların şunları yapmasına izin verebilir:

Bu kılavuzda, Google API'lerini kullanarak bu özellikleri alanınızda nasıl ayarlayacağınız açıklanmaktadır.

Özel rol atama sürecini otomatikleştirme

Bu kılavuzda, özel rol atama sürecini otomatikleştirmek için aşağıdaki adımları nasıl tamamlayacağınız açıklanmaktadır:

  1. Bu özelliklere erişebilen kullanıcıları düzenlemek için güvenlik grupları oluşturun.
  2. Gruplara üye ekleme
  3. Doğru ayrıcalığı seçerek özel bir yönetici rolü oluşturun.
  4. Kuruluş birimi kimliklerini alma
  5. Özel yönetici rolünü yeni oluşturulan gruplara uygulayın.

Ön koşullar

  1. JavaScript, Python ve Java gibi dillerde Google API'lerini kullanarak bir uygulamayı nasıl ayarlayıp çalıştıracağınızı anlamak için Hızlı Başlangıç Kılavuzları'nı okuyun.
  2. Bu kılavuzda açıklanan Cloud Identity API'lerinden herhangi birini kullanmadan önce Cloud Identity'yi ayarlamanız gerekir. Bu API'ler, yönetici ayrıcalıkları atamak için gruplar oluşturmak üzere kullanılır.
  3. Bir kullanıcıya özel rol erişimi vermek yerine bir kullanıcı grubuna özel rol erişimi vermek istiyorsanız Groups API'ye Genel Bakış başlıklı makaleyi okuyun ve Groups API'yi ayarlayın.

Güvenlik grupları oluşturma

groups.create yöntemiyle güvenlik grubu oluşturun. İstek labels alanına güvenlik etiketi eklendiğinde grup güvenlik grubu olarak ayarlanabilir. Güvenlik grubu oluşturmayla ilgili daha fazla bilgi ve sınırlamalar için güvenlik grubu oluşturma kılavuzuna bakın.

POST https://cloudidentity.googleapis.com/v1/groups

İsteğe bağlı olarak, grup sahibini başlatmak için InitialGroupConfig sorgu parametresini ekleyebilirsiniz:

POST https://cloudidentity.googleapis.com/v1/groups&initialGroupConfig={initialGroupConfig}

Bu isteği gönderen hesabın aşağıdaki kapsamlarından birine sahip olması gerekir:

  • https://www.googleapis.com/auth/cloud-identity.groups
  • https://www.googleapis.com/auth/cloud-identity
  • https://www.googleapis.com/auth/cloud-platform

İstek içeriği

İstek gövdesi, oluşturulacak grubun ayrıntılarını içerir. customerId değeri "C" ile başlamalıdır (örneğin, C046psxkn). Müşteri kimliğinizi bulun.

{
   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": ""
   }
}

Yanıt

Yanıtta Operation kaynağının yeni bir örneği yer alıyor.

{
   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": ""
      }
   }
}

Grup üyeleri ekleme

Grubu oluşturduktan sonraki adım, üye eklemektir. Grup üyesi, kullanıcı veya başka bir güvenlik grubu olabilir. Bir grubu başka bir grubun üyesi olarak eklerseniz üyeliğin yayılması 10 dakikaya kadar sürebilir. Ayrıca API, grup üyeliklerindeki döngüler için hata döndürür. Örneğin, group1, group2 grubunun üyesiyse group2, group1 grubunun üyesi olamaz.

Bir gruba üye eklemek için Directory API members.insert yöntemine yönelik aşağıdaki POST isteğini kullanın:

POST https://admin.googleapis.com/admin/directory/v1/groups/{groupKey}/members

groupKey yol parametresi, yeni üyenin grup e-posta adresi veya grubun benzersiz kimliğidir.

POST isteğinde bulunan hesabın aşağıdaki kapsamlarından birine sahip olması gerekir:

  • 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

İstek içeriği

İstek metni, oluşturulacak member ile ilgili ayrıntıları içerir.

{
   email: "person_one@example.com",
   role: "MEMBER", // can be `MEMBER`, `OWNER`, `MANAGER`
}

Yanıt

Yanıtta üyenin yeni örneği yer alır.

{
   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"
}

Bu istek, üye olarak eklemek istediğiniz her kullanıcı için ayrı ayrı yapılmalıdır. İstemcinizin kurması gereken HTTP bağlantılarının sayısını azaltmak için bu istekleri toplu olarak gönderebilirsiniz.

Ayrıcalıklı özel yönetici rolü oluşturma

Directory API, Google Workspace alanınızdaki özelliklere erişimi yönetmek için rol tabanlı erişim denetimini (RBAC) kullanmanıza olanak tanır. Google Workspace ile birlikte sunulan önceden oluşturulmuş rollerden daha ayrıntılı bir şekilde yönetici erişimini sınırlamak için ayrıcalıklar içeren özel roller oluşturabilirsiniz. Kullanıcılara veya güvenlik gruplarına rol atayabilirsiniz. Rol oluşturmayla ilgili sınırlamalar hakkında daha ayrıntılı bilgi için özel rol ve rol atama sınırlamaları başlıklı makaleyi inceleyin.

Yeni bir rol oluşturmak için Directory API roles.insert yöntemine aşağıdaki POST isteğini gönderin:

POST https://admin.googleapis.com/admin/directory/v1/customer/{customer}/roles

customerId, bu kılavuzun 1. adımında kullanılanla aynıdır.

POST isteğinde bulunan hesabın aşağıdaki kapsama sahip olması gerekir:

  • https://www.googleapis.com/auth/admin.directory.rolemanagement

İstek içeriği

İstek metni, oluşturulacak role ile ilgili ayrıntıları içerir. Bu rolle verilmesi gereken her ayrıcalık için bir privilegeName ve serviceId ekleyin.

Classroom analizleri

EDU_ANALYTICS_DATA_ACCESS ayrıcalığı, serviceId ayarı 019c6y1840fzfkt olarak belirlenmişken Analytics verilerine erişebilen özel bir rol oluşturmak için gereklidir.

{
  roleName: "Education Admin", // customize as needed
  roleDescription: "Access to view analytics data", // customize as needed
  rolePrivileges: [
     {
        privilegeName: "EDU_ANALYTICS_DATA_ACCESS",
        serviceId: "019c6y1840fzfkt"
     }
  ]
}

Geçici sınıf erişimi

Sınıflara geçici olarak erişebilen özel bir rol oluşturmak için ADMIN_OVERSIGHT_MANAGE_CLASSES ayrıcalığı ve serviceId ayarının 019c6y1840fzfkt olarak ayarlanması gerekir.

{
  roleName: "Education Admin", // customize as needed
  roleDescription: "Access to manage classes privilege", // customize as needed
  rolePrivileges: [
     {
        privilegeName: "ADMIN_OVERSIGHT_MANAGE_CLASSES",
        serviceId: "019c6y1840fzfkt"
     }
  ]
}

privilegeIds ve serviceIds listesini almak için privileges.list yöntemini çağırın.

Yanıt

Yanıtta rolün yeni örneği yer alır.

Classroom analizleri

{
  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
}

Geçici sınıf erişimi

{
  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
}

Kuruluş birimi kimliklerini alma

Kuruluş birimi kimliğini kullanarak özel yönetici rolünün erişimini bir veya daha fazla kuruluş birimiyle sınırlayabilirsiniz. orgUnitId değerini almak için OrgUnit API'yi kullanın.

Classroom analizleri

Özel yönetici rolünü belirli bir kullanıcıya veya gruba atarken bir öğrenci kuruluş birimi ve öğretmen kuruluş birimi seçmeniz önerilir. Bu işlem, özel yönetici ayrıcalığı verilen kullanıcıların kuruluş birimlerindeki öğrenci ve sınıf düzeyindeki verilere erişmesine olanak tanır. Öğrenci kuruluş birimi atlanırsa belirtilen kullanıcılar öğrenci verilerine erişemez. Öğretmen kuruluş birimi atlanırsa belirtilen kullanıcılar sınıf düzeyindeki verilere erişemez.

Geçici sınıf erişimi

Özel yönetici rolüne sahip kullanıcıların belirli kuruluş birimlerindeki sınıflara erişmesine izin vererek geçici sınıf erişimi ayrıcalıklarını sınırlayabilirsiniz. Bir kuruluş birimine erişimi kısıtlıyorsanız özel yönetici rolü atanmış grup, yalnızca sınıfın birincil öğretmeninin söz konusu kuruluş biriminde olduğu sınıflara erişebilir.

Özel yönetici rolünü atama

Özel yönetici rolünü bir gruba atamak için aşağıdaki POST isteğini kullanın. Rol atama sınırları için özel rol ve rol atama sınırlamaları kılavuzuna bakın.

Directory API roleAssignments.insert:

POST https://admin.googleapis.com/admin/directory/v1/customer/{customer}/roleassignments

Bir gruba veya tek bir kullanıcıya atama

Ayrıcalığı bir gruba atıyorsanız istek metnindeki assignedTo alanına groupId öğesini ekleyin. groupId, Güvenlik grubu oluşturma adımında elde edildi. Ayrı bir kullanıcıya ayrıcalık atıyorsanız istek gövdesindeki assignedTo alanına kullanıcının kimliğini ekleyin. Kullanıcının kimliği, users.get çağrılarak ve kullanıcının e-posta adresi userKey parametresi olarak belirtilerek veya users.list çağrılarak alınabilir.

POST isteğinde bulunan hesabın aşağıdaki kapsama sahip olması gerekir:

  • https://www.googleapis.com/auth/admin.directory.rolemanagement

İstek içeriği

İstek metni, oluşturulacak RoleAssignment ile ilgili ayrıntıları içerir. Bu grupla ilişkilendirmek istediğiniz her kuruluş birimi için bir istekte bulunmanız gerekir.

{
   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
}

Yanıt

Yanıtta RoleAssignment öğesinin yeni örneği yer alıyor.

{
   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>"
}

Kaynaklar

Daha fazla bilgi için: