REST Resource: roleAssignments

资源:RoleAssignment

定义角色的分配。

JSON 表示法
{
  "roleAssignmentId": string,
  "roleId": string,
  "kind": string,
  "etag": string,
  "assignedTo": string,
  "assigneeType": enum (AssigneeType),
  "scopeType": string,
  "orgUnitId": string,
  "condition": string
}
字段
roleAssignmentId

string (int64 format)

此 roleAssignment 的 ID。

roleId

string (int64 format)

分配的角色的 ID。

kind

string

API 资源的类型。始终为 admin#directory#roleAssignment

etag

string

资源的 ETag。

assignedTo

string

将此角色分配给的实体的唯一 ID,可以是用户的 userId、群组的 groupId,也可以是 Identity and Access Management (IAM) 中定义的服务账号的 uniqueId

assigneeType

enum (AssigneeType)

仅限输出。分配对象的类型(USERGROUP)。

scopeType

string

分配此角色的范围。

可接受的值包括:

  • CUSTOMER
  • ORG_UNIT
orgUnitId

string

如果该角色仅限于某个组织部门,则此值包含仅有该角色的组织部门的 ID。

condition

string

可选。(公开 Beta 版 - 适用于 API 的 /admin/directory/v1.1beta1 版本)

注意:此功能适用于企业标准版、企业 Plus 版、Google Workspace 教育 Plus 版和 Cloud Identity 专业版客户。使用该功能无需进行额外设置。目前,在 Beta 版中,管理控制台 (http://admin.google.com) 尚不支持与 condition 关联的 RoleAssignment

与此角色分配关联的条件。设置了 condition 字段的 RoleAssignment 仅在被访问的资源符合条件时才会生效。如果 condition 为空,则角色 (roleId) 将无条件应用于范围 (scopeType) 中的操作者 (assignedTo)。

目前仅支持以下两个条件:

  • 如需将 RoleAssignment 仅应用于安全群组,请执行以下操作:api.getAttribute('cloudidentity.googleapis.com/groups.labels', []).hasAny(['groups.security']) && resource.type == 'cloudidentity.googleapis.com/Group'

  • 如需将 RoleAssignment 设为不适用于安全群组,请执行以下操作:!api.getAttribute('cloudidentity.googleapis.com/groups.labels', []).hasAny(['groups.security']) && resource.type == 'cloudidentity.googleapis.com/Group'

目前,这两个条件字符串必须完全一致,并且仅适用于以下预先创建的管理员角色

  • 群组编辑者
  • 群组读取者

条件遵循 Cloud IAM 条件语法

AssigneeType

分配了角色的身份类型。

枚举
USER 网域内的个人用户。
GROUP 网域中的群组。

方法

delete

删除角色分配。

get

检索角色分配。

insert

创建角色分配。

list

检索所有 roleAssignment 的分页列表。