
# 权限管理
如果您需要对OneAccess管理门户上的应用及OneAccess的管理门户访问权限进行管理，如为企业中的员工设置OneAccess部分应用访问权限或管理门户部分功能的查看和编辑权限，可以在OneAccess上创建用户或管理员，并为其授予相应的权限，其操作请参考[普通用户登录用户门户并访问应用](https://support.huaweicloud.com/qs-oneaccess/oneaccess_02_0001.html)。
如果您需要对华为云上购买的OneAccess实例进行编辑权限管理，如针对OneAccess为企业中的员工设置不同的权限，以达到不同员工之间的权限隔离，您可以使用统一身份认证服务（Identity and Access Management，简称IAM）进行精细的权限管理。该服务提供用户身份认证、权限分配、访问控制等功能，可以帮助您安全地控制云服务资源的访问。IAM的权限管理是在华为云上进行的，主要针对OneAccess实例的编辑权限进行管理。
通过IAM，您可以在华为云账号中给员工创建IAM用户，并授权控制其对云服务资源的访问范围。例如对于负责企业信息管理的员工，您希望员工拥有查看OneAccess实例信息的权限，但是不希望员工拥有修改证书的权限，那么您可以使用IAM为其创建用户，通过授予仅能查看OneAccess实例信息，但是不允许修改证书的权限，控制用户对OneAccess资源的使用范围。
如果账号已经能满足您的要求，不需要创建独立的IAM用户进行权限管理，您可以跳过本章节，不影响您使用OneAccess服务的其它功能。
IAM是华为云提供权限管理的基础服务，无需付费即可使用，您只需要为您账号中的资源进行付费。关于IAM的详细介绍，请参见[IAM产品介绍](https://support.huaweicloud.com/productdesc-iam/iam_01_0026.html)。
#### OneAccess控制台权限
默认情况下，管理员创建的IAM用户没有任何权限，需要将其加入用户组，并给用户组授予策略或角色，才能使得用户组中的用户获得对应的权限，这一过程称为授权。授权后，用户就可以基于被授予的权限对云服务进行操作。
OneAccess部署时不区分物理区域，为全局级服务。授权时，在全局级服务中设置权限，访问OneAccess时，不需要切换区域。
权限根据授权精细程度分为角色和策略。
- 角色：IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度，提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系，因此给用户授予角色时，可能需要一并授予依赖的其他角色，才能正确完成业务。角色并不能满足用户对精细化授权的要求，无法完全达到企业对权限最小化的安全管控要求。
- 策略：IAM提供的一种细粒度授权的能力，可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式，能够满足企业对权限最小化的安全管控要求。多数细粒度策略以API接口为粒度进行权限拆分，权限的最小粒度为API授权项（action），OneAccess支持的API授权项请参见[OneAccess授权项]。
如[表1]所示，包括了OneAccess控制台的所有系统权限。
 表1OneAccess控制台权限 
| 系统角色/策略名称                | 描述                                                          | 类别   |
|:---|:---|:---|
| Tenant Administrator     | 除统一身份认证服务外，拥有其他所有服务的管理员权限包括应用身份管理服务所有权限。                    | 系统角色 |
| Tenant Guest             | 除统一身份认证服务外，拥有其他所有服务的只读权限。拥有该权限的IAM用户仅能查看应用身份管理服务，不具备服务配置权限。 | 系统角色 |
| IAM ReadOnlyAccess       | 统一身份认证服务的只读权限。                                              | 系统策略 |
| OneAccess FullAccess     | 应用身份管理服务所有策略权限。                                             | 系统策略 |
| OneAccess ReadOnlyAccess | 应用身份管理服务只读策略权限，拥有该权限的用户仅能查看应用身份管理服务，不具备服务配置权限。              | 系统策略 |
   
![](https://support.huaweicloud.com/productdesc-oneaccess/public_sys-resources/note_3.0-zh-cn.png)
**华为云账号**和被授权的子账号、委托账号可以购买应用身份管理服务实例，子账户和委托账号需要实例授权后才能使用应用身份管理服务。
[表2]列出了OneAccess常用操作与系统权限的授权关系，您可以参照该表选择合适的系统权限。
 表2常用操作与系统权限的关系 
| 操作       | Tenant Administrator                                                                                           | Tenant Guest | OneAccess FullAccess                                                                                          | OneAccess ReadOnlyAccess |
|:---|:---|:---|:---|:---|
| 查询产品实例列表 | √                                                                                                              | √            | √                                                                                                             | √                        |
| 查询域名证书详情 | √                                                                                                              | √            | √                                                                                                             | √                        |
| 订购实例     | √ 说明： 子账户或委托账号需同时具有IAM ReadOnlyAccess权限。 | ×            | √ 说明： 子账户或委托账号需同时具有IAM ReadOnlyAccess权限。 | ×                        |
| 自定义域名    | √                                                                                                              | ×            | √                                                                                                             | ×                        |
| 解绑自定义域名  | √                                                                                                              | ×            | √                                                                                                             | ×                        |
| 修改域名证书   | √                                                                                                              | ×            | √                                                                                                             | ×                        |
| 删除实例     | √                                                                                                              | ×            | √                                                                                                             | ×                        |
   
 #### OneAccess授权项
策略包含系统策略和自定义策略，如果系统策略不满足授权要求，管理员可以创建自定义策略，并通过给用户组授予自定义策略来进行精细的访问控制。策略支持的操作与API相对应，授权项列表说明如下：
- 权限：允许或拒绝某项操作。
- 授权项：自定义策略中支持的Action，在自定义策略中的Action中写入授权项，可以实现授权项对应的权限功能。
- IAM项目(Project)/企业项目(Enterprise Project)：自定义策略的授权范围，包括IAM项目与企业项目。授权范围如果同时支持IAM项目和企业项目，表示此授权项对应的自定义策略，可以在IAM和企业管理两个服务中给用户组授权并生效。如果仅支持IAM项目，不支持企业项目，表示仅能在IAM中给用户组授权并生效，如果在企业管理中授权，则该自定义策略不生效。关于IAM项目与企业项目的区别，详情请参见[IAM项目与企业项目的区别](https://support.huaweicloud.com/iam_faq/iam_01_0606.html)。
| 权限           | 授权项                                       | IAM项目 (Project) | 企业项目 (Enterprise Project) |
|:---|:---|:---|:---|
| 开通产品实例       | oneaccess:instances:create                | √                                                     | ×                                                             |
| 查询产品实例列表     | oneaccess:instances:get                   | √                                                     | ×                                                             |
| 自定义域名        | oneaccess:domains:create                  | √                                                     | ×                                                             |
| 解绑自定义域名      | oneaccess:domains:delete                  | √                                                     | ×                                                             |
| 查询域名证书详情     | oneaccess:certificates:get                | √                                                     | ×                                                             |
| 修改域名证书       | oneaccess:certificates:update             | √                                                     | ×                                                             |
| 变更规格         | oneaccess:instances:update                | √                                                     | ×                                                             |
| 授权用户实例访问权限   | oneaccess:permissions:grantRoleToUser     | √                                                     | ×                                                             |
| 移除用户实例访问权限   | oneaccess:permissions:revokeRoleFromUser  | √                                                     | ×                                                             |
| 查询权限角色       | oneaccess:permissions:listRoles           | √                                                     | ×                                                             |
| 查询权授权用户的权限角色 | oneaccess:permissions:listRolesForUser    | √                                                     | ×                                                             |
| 查询实例的授权用户列表  | oneaccess:permissions:listUsersOnInstance | √                                                     | ×                                                             |
   
