为持有该角色的所有人替换每个所列资源类型的范围。范围只做限制,授予的权限绝不会超出角色允许的范围。适用于 tenant_admin、tenant_member 和自定义角色——所有者角色无法被限制(409)。项目实例需要提供其 workspace_id。
响应携带 ETag 头(与对该资源执行 GET 时返回的值相同)。将其放入 If-Match 回传即可使写入成为条件写入:若资源在此期间已被修改,写入将以 412 被拒绝,且不做任何更改。该校验能缩小但无法完全消除并发覆盖的窗口——两个在同一时刻通过校验的写入方都可能写入成功。
所需权限: policy:manage
- 如果改动会让某人获得管理员角色,或会缩小管理员能访问的范围,还需要由团队所有者或管理员操作。
路径参数
tenant_admin、tenant_member 或自定义角色键
请求头
可选。先前读取此资源时获得的 ETag。若资源此后已变更,写入将以 412 拒绝;省略则无条件覆盖。
请求体
变更原因;记录在审计日志中。最多 255 字节(UTF-8)。
所列每种资源类型的访问范围替换为给定范围;未列出的类型保留当前访问范围。Show Access Scope Entry 对象
all 表示所有实例;instances 表示仅列出的实例
资源类型,例如 memorylake:project
当 mode 为 instances 时必填Show Access Scope Instance 对象
省略则为该成员角色允许的所有操作
只读行的回显。标记为 true 的实例在写入时会被跳过——权限级别在资源上设置,而非通过访问范围设置。
父工作空间——项目实例必填
Show Role Access Scope 对象
每个可设范围的资源类型一项Show Access Scope Entry 对象
all 表示所有实例;instances 表示仅列出的实例
资源类型,例如 memorylake:project(参见 GET /permission-catalog)
只读。成员角色对该类型授予的实例级操作——即范围条目最多可允许的操作。
mode 为 instances 时的实例列表Show Access Scope Instance 对象
该实例上允许的操作。省略则为该成员角色允许的全部操作。
只读。当 via_permission_level 为 true 时的权限级别。可选值:read、write、manage。
只读。成员通过在此实例上授予的权限级别访问该实例,而非通过此范围。写入时可原样回传;此类实例会被跳过。