
# 角色与策略授权参考（旧版IAM）
本章节介绍UCS角色与策略授权场景下支持的策略授权项。
#### 支持的授权项
策略包含系统策略和自定义策略，如果系统策略不满足授权要求，管理员可以创建自定义策略，并通过给用户组授予自定义策略来进行精细的访问控制。策略支持的操作与API相对应，授权项列表说明如下：
- 权限：允许或拒绝某项操作。
- 对应API接口：自定义策略实际调用的API接口。
- 授权项：自定义策略中支持的Action，在自定义策略中的Action中写入授权项，可以实现授权项对应的权限功能。
- 依赖的授权项：部分Action存在对其他Action的依赖，需要将依赖的Action同时写入授权项，才能实现对应的权限功能。
- IAM项目(Project)/企业项目(Enterprise Project)：自定义策略的授权范围，包括IAM项目与企业项目。授权范围如果同时支持IAM项目和企业项目，表示此授权项对应的自定义策略，可以在IAM和企业管理两个服务中给用户组授权并生效。如果仅支持IAM项目，不支持企业项目，表示仅能在IAM中给用户组授权并生效，如果在企业管理中授权，则该自定义策略不生效。关于IAM项目与企业项目的区别，详情请参见：[IAM与企业管理的区别](https://support.huaweicloud.com/iam_faq/iam_01_0101.html)。
![](https://support.huaweicloud.com/api-ucs/public_sys-resources/note_3.0-zh-cn.png)
"√"表示支持，"x"表示暂不支持。
华为云（UCS）支持的自定义策略授权项如下所示：
表1UCS集群 
| 权限           | 对应API接口                                      | 授权项（Action）              | IAM项目(Project) | 企业项目 (Enterprise Project) |
|:---|:---|:---|:---|:---|
| 获取集群列表       | GET /v1/clusters                             | ucs:clusters:list        | √              | x                         |
| 获取单个集群       | GET /v1/clusters/{clusterid}                 | ucs:clusters:get         | √              | x                         |
| 注册集群         | POST /v1/cluster                             | ucs:clusters:create      | √              | x                         |
| 更新集群         | PUT /v1/clusters/{clusterid}                 | ucs:clusters:update      | √              | x                         |
| 删除集群         | DELETE /v1/clusters/{clusterid}              | ucs:clusters:delete      | √              | x                         |
| 获取集群接入信息     | GET /v1/clusters/{clusterid}/accessinfo      | ucs:clusters:create      | √              | x                         |
| 激活集群         | PUT /v1/clusters/{clusterid}/activation      | ucs:clusters:update      | √              | x                         |
| 集群关联权限策略     | PUT /v1/clusters/{clusterid}/associatedrules | ucs:clustergroups:update | √              | x                         |
| 获取租户的CCE集群列表 | GET /v1/managedclusters                      | ucs:clusters:list        | √              | x                         |
   
表2容器舰队 
| 权限                      | 对应API接口                                                     | 授权项                      | IAM项目(Project) | 企业项目 (Enterprise Project) |
|:---|:---|:---|:---|:---|
| 集群加入容器舰队                | POST /v1/clusters/{clusterid}/join                          | ucs:clusters:update      | √              | x                         |
| 集群移出容器舰队                | POST /v1/clusters/{clusterid}/unjoin                        | ucs:clusters:update      | √              | x                         |
| 注册容器舰队                  | POST /v1/clustergroups                                      | ucs:clustergroups:create | √              | x                         |
| 删除容器舰队                  | DELETE /v1/clustergroups/{clustergroupid}                   | ucs:clustergroups:delete | √              | x                         |
| 获取单个容器舰队                | GET /v1/clustergroups/{clustergroupid}                      | ucs:clustergroups:get    | √              | x                         |
| 向容器舰队中添加集群              | PUT /v1/clustergroups/{clustergroupid}/associatedclusters   | ucs:clustergroups:update | √              | x                         |
| 更新容器舰队描述信息              | PUT /v1/clustergroups/{clustergroupid}/description          | ucs:clustergroups:update | √              | x                         |
| 更新容器舰队关联权限策略            | PUT /v1/clustergroups/{clustergroupid}/associatedrules      | ucs:clustergroups:update | √              | x                         |
| 更新容器舰队的联邦对应的zone        | PUT /v1/clustergroups/{clustergroupid}/associatedzones      | ucs:clustergroups:update | √              | x                         |
| 获取容器舰队列表                | GET /v1/clustergroups                                       | ucs:clustergroups:list   | √              | x                         |
| 启用容器舰队联邦                | POST /v1/clustergroups/{clustergroupid}/federations         | ucs:clustergroups:create | √              | x                         |
| 关闭容器集群联邦                | DELETE /v1/clustergroups/{clustergroupid}/federations       | ucs:clustergroups:delete | √              | x                         |
| 查询联邦开启进度                | GET /v1/clustergroups/{clustergroupid}/federations/progress | ucs:clustergroups:get    | √              | x                         |
| 创建联邦网络连接并下载联邦kubeconfig | POST /v1/clustergroups/{clustergroupid}/cert                | ucs:clustergroups:get    | √              | x                         |
| 创建联邦网络连接                | POST /v1/clustergroups/{clustergroupid}/connection          | ucs:clustergroups:get    | √              | x                         |
| 下载联邦kubeconfig          | POST /v1/clustergroups/{clustergroupid}/kubeconfig          | ucs:clustergroups:get    | √              | x                         |
   
表3权限管理 
| 权限       | 对应API接口                               | 授权项                         | IAM项目(Project) | 企业项目 (Enterprise Project) |
|:---|:---|:---|:---|:---|
| 创建权限策略   | POST /v1/permissions/rules            | ucs:permissionsRules:create | √              | x                         |
| 获取权限策略列表 | GET /v1/permissions/rules             | ucs:permissionsRules:list   | √              | x                         |
| 删除权限策略   | DELETE /v1/permissions/rules/{ruleid} | ucs:permissionsRules:delete | √              | x                         |
| 更新权限策略   | PUT /v1/permissions/rules/{ruleid}    | ucs:permissionsRules:update | √              | x                         |
   
