策略授权参考
本章节介绍云备份(Cloud Backup and Recovery, CBR)基于策略授权场景下支持的策略授权项。
支持的授权项
策略包含系统策略和自定义策略,如果系统策略不满足授权要求,管理员可以创建自定义策略,并通过给用户组授予自定义策略来进行精细的访问控制。策略支持的操作与API相对应,授权项列表说明如下:
- 权限:允许或拒绝某项操作。
- 对应API接口:自定义策略实际调用的API接口。
- 授权项:自定义策略中支持的Action,在自定义策略中的Action中写入授权项,可以实现授权项对应的权限功能。
- 依赖的授权项:部分Action存在对其他Action的依赖,需要将依赖的Action同时写入授权项,才能实现对应的权限功能。
- IAM项目(Project)/企业项目(Enterprise Project):自定义策略的授权范围,包括IAM项目与企业项目。授权范围如果同时支持IAM项目和企业项目,表示此授权项对应的自定义策略,可以在IAM和企业管理两个服务中给用户组授权并生效。如果仅支持IAM项目,不支持企业项目,表示仅能在IAM中给用户组授权并生效,如果在企业管理中授权,则该自定义策略不生效。管理员可以在授权项列表中查看授权项是否支持IAM项目或企业项目,“√”表示支持,“×”表示暂不支持。关于IAM项目与企业项目的区别,详情请参见:IAM与企业管理的区别。
CBR的支持自定义策略授权项如下所示:
任务
权限 | 对应API接口 | 授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|
查询任务列表 | GET /v3/{project_id}/operation-logs | cbr:tasks:list | √ | √ |
查询单个任务 | GET /v3/{project_id}/operation-logs/{operation_log_id} | cbr:tasks:get | √ | √ |
可保护性
权限 | 对应API接口 | 授权项 | 依赖的授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|---|
查询可保护资源 | GET /v3/{project_id}/protectables/{protectable_type}/instances | cbr:vaults:listProtectables | ecs:cloudServers:list evs:volumes:list | √ | √ |
查询指定可保护资源 | GET /v3/{project_id}/protectables/{protectable_type}/instances/{instance_id} | cbr:vaults:getProtectables | ecs:cloudServers:list evs:volumes:list | √ | × |
查询agent状态 | POST /v3/{project_id}/agent/check | cbr:backups:checkAgent | ecs:cloudServers:list | √ | × |
查询复制能力 | GET /v3/{project_id}/replication-capabilities | cbr:backups:queryReplicationCapability | - | √ | × |
存储库
权限 | 对应API接口 | 授权项 | 依赖的授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|---|
设置存储库策略 | POST /v3/{project_id}/vaults/{vault_id}/associatepolicy | cbr:vaults:associatePolicy | - | √ | √ |
查询指定存储库 | GET /v3/{project_id}/vaults/{vault_id} | cbr:vaults:get | - | √ | √ |
修改存储库 | PUT /v3/{project_id}/vaults/{vault_id} | cbr:vaults:update | - | √ | √ |
删除存储库 | DELETE /v3/{project_id}/vaults/{vault_id} | cbr:vaults:delete | - | √ | √ |
移除资源 | POST /v3/{project_id}/vaults/{vault_id}/removeresources | cbr:vaults:removeResources | - | √ | √ |
添加资源 | POST /v3/{project_id}/vaults/{vault_id}/addresources | cbr:vaults:addResources | ecs:cloudServers:list evs:volumes:list | √ | √ |
查询存储库列表 | GET /v3/{project_id}/vaults | cbr:vaults:list | - | √ | √ |
创建存储库 | POST /v3/{project_id}/vaults | cbr:vaults:create | ecs:cloudServers:list evs:volumes:list | √ | √ |
查询其他区域存储库列表 | GET /v3/{project_id}/external_vaults | cbr:vaults:listExternalVaults | cbr:vaults:listVaults | √ | √ |
解除存储库策略 | POST /v3/{project_id}/vaults/{vault_id}/dissociatepolicy | cbr:vaults:dissociatePolicy | - | √ | √ |
迁移资源 | POST /v3/{project_id}/vaults/{vault_id}/migrateresources | cbr:vaults:migrateResources | cbr:vaults:addResources | √ | √ |
还原点
权限 | 对应API接口 | 授权项 | 依赖的授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|---|
同步备份还原点 | POST /v3/{project_id}/checkpoints/sync | cbr:vaults:sync | - | √ | √ |
复制备份还原点 | POST /v3/{project_id}/checkpoints/replicate | cbr:vaults:replicate | - | √ | √ |
创建备份还原点 | POST /v3/{project_id}/checkpoints | cbr:vaults:backup | ecs:cloudServers:list evs:volumes:list | √ | √ |
备份共享
权限 | 对应API接口 | 授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|
添加备份成员 | POST /v3/{project_id}/backups/{backup_id}/members | cbr:member:create | √ | √ |
更新备份成员状态 | PUT /v3/{project_id}/backups/{backup_id}/members/{member_id} | cbr:member:update | √ | √ |
获取备份成员详情 | GET /v3/{project_id}/backups/{backup_id}/members/{member_id} | cbr:member:get | √ | √ |
获取备份成员列表 | GET /v3/{project_id}/backups/{backup_id}/members | cbr:member:list | √ | √ |
删除指定的备份成员 | DELETE /v3/{project_id}/backups/{backup_id}/members/{member_id} | cbr:member:delete | √ | √ |
备份
权限 | 对应API接口 | 授权项 | 依赖的授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|---|
查询备份列表 | GET /v3/{project_id}/backups | cbr:backups:list | - | √ | √ |
查询指定备份 | GET /v3/{project_id}/backups/{backup_id} | cbr:backups:get | - | √ | √ |
删除备份 | DELETE /v3/{project_id}/backups/{backup_id} | cbr:backups:delete | - | √ | √ |
同步备份 | POST /v3/{project_id}/backups/sync | cbr:backups:sync | - | √ | √ |
恢复备份 | POST /v3/{project_id}/backups/{backup_id}/restore | cbr:backups:restore | ecs:cloudServers:list evs:volumes:list | √ | √ |
复制备份 | POST /v3/{project_id}/backups/{backup_id}/replicate | cbr:backups:replicate | - | √ | √ |
更新备份 | PUT /v3/{project_id}/backups/{backup_id} | cbr:backups:update | - | √ | √ |
查询备份元数据 | GET /v3/{project_id}/backups/{backup_id}/metadata | cbr:backups:getMetadata | - | √ | √ |
策略
权限 | 对应API接口 | 授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|
查询策略列表 | GET /v3/{project_id}/policies | cbr:policies:list | √ | × |
创建策略 | POST /v3/{project_id}/policies | cbr:policies:create | √ | × |
查询指定策略 | GET /v3/{project_id}/policies/{policy_id} | cbr:policies:get | √ | × |
更新策略 | PUT /v3/{project_id}/policies/{policy_id} | cbr:policies:update | √ | × |
删除策略 | DELETE /v3/{project_id}/policies/{policy_id} | cbr:policies:delete | √ | × |
组织策略
权限 | 对应API接口 | 授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|
创建组织策略 | POST /v3/{project_id}/organization-policies | cbr:organizationPolicies:create | √ | × |
查询组织策略列表 | GET /v3/{project_id}/organization-policies | cbr:organizationPolicies:list | √ | × |
查询指定组织策略 | GET /v3/{project_id}/organization-policies/{organization_policy_id} | cbr:organizationPolicies:get | √ | × |
删除组织策略 | DELETE /v3/{project_id}/organization-policies/{organization_policy_id} | cbr:organizationPolicies:delete | √ | × |
更新组织策略 | PUT /v3/{project_id}/organization-policies/{organization_policy_id} | cbr:organizationPolicies:update | √ | × |
标签
权限 | 对应API接口 | 授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|
查询存储库资源实例 | POST /v3/{project_id}/vault/resource_instances/action | cbr:vaults:listResourceInstances | √ | √ |
批量添加删除存储库资源标签 | POST /v3/{project_id}/vault/{vault_id}/tags/action | cbr:vaults:bulkCreateOrDeleteTags | √ | √ |
添加存储库资源标签 | POST /v3/{project_id}/vault/{vault_id}/tags | cbr:vaults:setTags | √ | √ |
删除存储库资源标签 | DELETE /v3/{project_id}/vault/{vault_id}/tags/{key} | cbr:vaults:deleteTags | √ | √ |
查询存储库资源标签 | GET /v3/{project_id}/vault/{vault_id}/tags | cbr:vaults:getTags | √ | √ |
查询存储库项目标签 | GET /v3/{project_id}/vault/tags | cbr:vaults:listProjectTags | √ | √ |
客户端
权限 | 对应API接口 | 授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|
注册客户端 | POST /v3/{project_id}/agents | cbr:agents:register | √ | × |
查询单个客户端 | GET /v3/{project_id}/agents/{agent_id} | cbr:agents:get | √ | × |
列举客户端 | GET /v3/{project_id}/agents | cbr:agents:list | √ | × |
移除客户端 | DELETE /v3/{project_id}/agents/{agent_id} | cbr:agents:delete | √ | × |
更新客户端 | PUT /v3/{project_id}/agents/{agent_id} | cbr:agents:update | √ | × |
移除备份路径 | POST /v3/{project_id}/agents/{agent_id}/remove-path | cbr:agents:removePath | √ | × |
新增备份路径 | POST /v3/{project_id}/agents/{agent_id}/add-path | cbr:agents:addPath | √ | × |
计量
权限 | 对应API接口 | 授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|
查询容量统计 | GET /v3/{project_id}/storage_usage | cbr:backups:listStorageUsage | √ | √ |
运营
权限 | 对应API接口 | 授权项 | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|---|---|---|---|---|
变更存储库 | PUT /v3/{project_id}/orders/{order_id} | cbr:vaults:updateOrder | √ | √ |

