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 或服务账号的 uniqueId(如 Identity and Access Management (IAM) 中所定义)。

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 的分页列表。