
# 权限管理
如果您需要对华为云上购买的CodeArts IDE资源，给企业中的员工设置不同的访问权限，以达到不同员工之间的权限隔离，您可以使用统一身份认证服务（Identity and Access Management，简称[IAM](https://support.huaweicloud.com/productdesc-iam/iam_01_0026.html)）进行精细的权限管理。IAM是华为云提供权限管理的基础服务，无需付费即可使用，您只需要为您账号中的资源进行付费。
- IAM服务提供用户身份认证、权限分配、访问控制等功能，可以帮助您安全地控制CodeArts IDE资源的访问。
- 通过IAM，您可以在华为云账号中给员工创建IAM用户，并使用策略来控制其对华为云资源的访问范围。例如您的员工中有负责软件开发的人员，您希望开发人员拥有绑定CodeArts IDE激活码的权限，但是不希望其拥有购买CodeArts IDE激活码的权限，那么您可以使用IAM为开发人员创建用户，通过授权控制仅能绑定CodeArts IDE激活码，但是不允许购买CodeArts IDE激活码的权限策略，控制开发人员对CodeArts IDE资源的使用范围。
**CodeArts IDE权限**
默认情况下，管理员创建的IAM用户没有任何权限，需要将其加入用户组，并给用户组授予策略或角色，才能使得用户组中的用户获得对应的权限，这一过程称为授权。授权后，用户就可以基于被授予的权限对云服务进行操作。
CodeArts IDE部署时通过物理区域划分，为项目级服务。授权时，"作用范围"需要选择"区域级项目"，然后在指定区域（如华北-北京4）对应的项目（cn-north-4）中设置相关权限，并且该权限仅对此项目生效；如果在"所有项目"中设置权限，则该权限在所有区域项目中都生效。访问CodeArts IDE时，需要先切换至授权区域。
根据授权精细程度分为角色和策略。
- 角色：IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度，提供有限的服务相关角色用于授权。由于各服务之间存在业务依赖关系，因此给用户授予角色时，可能需要一并授予依赖的其他角色，才能正确完成业务。角色并不能满足用户对精细化授权的要求，无法完全达到企业对权限最小化的安全管控要求。
- 策略：IAM最新提供的一种细粒度授权的能力，可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式，能够满足企业对权限最小化的安全管控要求。例如：针对CodeArts IDE服务，管理员能够控制IAM用户仅能对激活码进行指定的管理操作。
如[表1]所示，包括了CodeArts IDE的所有系统权限。
 表1CodeArts IDE系统权限 
| 策略名称                    | 描述                | 类别   |
|:---|:---|:---|
| CodeArts IDE FullAccess | CodeArts IDE所有权限。 | 系统策略 |
| CodeArts IDE ReadOnly   | CodeArts IDE只读权限。 | 系统策略 |
   
[表2]列出了CodeArts IDE常用操作与系统策略的授权关系，您可以参照该表选择合适的系统策略。
 表2常用操作与系统权限的关系 
| 操作         | CodeArts IDE FullAccess | CodeArts IDE ReadOnly |
|:---|:---|:---|
| 查询激活码列表    | √                       | √                     |
| 查询用户试用剩余天数 | √                       | √                     |
| 购买激活码      | √                       | ×                     |
| 绑定激活码      | √                       | ×                     |
| 解绑激活码      | √                       | ×                     |
| 激活         | √                       | ×                     |
   
表3常用操作与对应授权项 
| 操作         | 授权项                             |
|:---|:---|
| 查询激活码列表    | CodeArtsIDE:license:list        |
| 查询用户试用剩余天数 | CodeArtsIDE:system:getTrailDays |
| 购买激活码      | CodeArtsIDE:license:purchase    |
| 绑定激活码      | CodeArtsIDE:license:bind        |
| 解绑激活码      | CodeArtsIDE:license:unbind      |
| 激活         | CodeArtsIDE:license:activate    |
   
