21.4. 角色权限子集合
21.4.1. 角色权限子集合 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
每个角色都包括了一组允许的操作或
permits,这些信息包括在 API 的 capabilities 中。
角色的
permits 作为子集合被列出。
例 21.5. 列出角色的权限
GET /api/roles/b67dfbe2-0dbc-41e4-86d3-a2fbef02cfa9/permits HTTP/1.1
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
<permits>
<permit id="1"
href="/api/roles/b67dfbe2-0dbc-41e4-86d3-a2fbef02cfa9/permits/1">
<name>create_vm</name>
<administrative>false</administrative>
<role id="b67dfbe2-0dbc-41e4-86d3-a2fbef02cfa9"
href="/api/roles/b67dfbe2-0dbc-41e4-86d3-a2fbef02cfa9"/>
</permit>
...
</permits>
21.4.2. 为角色分配权限 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
到
permits 子集合的 POST 请求可以为角色分配 permit。使用 id 属性或 name 项来指定要分配的 permit。
例 21.6. 为角色分配一个权限
POST /api/roles/b67dfbe2-0dbc-41e4-86d3-a2fbef02cfa9/permits HTTP/1.1
Accept: application/xml
Content-Type: application/xml
<permit id="1"/>
HTTP/1.1 201 Created
Content-Type: application/xml
<permits>
<permit id="1"
href="/api/roles/b67dfbe2-0dbc-41e4-86d3-a2fbef02cfa9/permits/1">
<name>create_vm</name>
<administrative>false</administrative>
<role id="b67dfbe2-0dbc-41e4-86d3-a2fbef02cfa9"
href="/api/roles/b67dfbe2-0dbc-41e4-86d3-a2fbef02cfa9"/>
</permit>
</permits>
21.4.3. 为角色删除权限 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
使用到
permit 资源的 DELETE 请求来为角色删除一个权限。
例 21.7. 为角色删除权限
DELETE /api/roles/b67dfbe2-0dbc-41e4-86d3-a2fbef02cfa9/permits/1 HTTP/1.1
HTTP/1.1 204 No Content