# 通过IAM角色与策略授予使用MgC的权限
如果您需要对您所拥有的MgC进行[角色与策略](https://support.huaweicloud.com/productdesc-mgc/mgc_01_0007.html#section0)的权限管理，您可以使用[统一身份认证服务](https://support.huaweicloud.com/usermanual-iam/iam_01_0001.html)（Identity and Access Management，简称IAM）。通过IAM，您可以：
- 根据企业的业务组织，在您的华为账号中，给企业中不同职能部门的员工创建IAM用户，让员工拥有唯一安全凭证，并使用MgC资源。
- 根据企业用户的职能，设置不同的访问权限，以达到用户之间的权限隔离。
- 将MgC资源委托给更专业、高效的其他华为账号或者云服务，这些账号或者云服务可以根据权限进行代运维。
如果华为账号已经能满足您的要求，不需要创建独立的IAM用户，您可以跳过本章节，不影响您使用MgC的其他功能。
本章节为您介绍使用角色与策略的授权方法，操作流程如[图1]所示。
#### 前提条件
给用户组授权之前，请您了解用户组可以添加的MgC权限，并结合实际需求进行选择，MgC支持的系统权限，请参见[角色与策略权限管理](https://support.huaweicloud.com/productdesc-mgc/mgc_01_0007.html#section0)的MgC系统权限。若您需要对除MgC之外的其它服务授权，IAM支持服务的所有权限请参见[系统权限](https://support.huaweicloud.com/permissions/iam_01_0001.html?product=mgc)。
#### 示例流程
图1给用户授予MgC权限流程   
![](https://support.huaweicloud.com/usermanual-mgc/zh-cn_image_0000002356698120.png "点击放大")
1. [创建用户组并授权](https://support.huaweicloud.com/usermanual-iam/iam_03_0001.html)
   需要同时为用户组授权"系统策略"和"自定义策略"。
   ![](https://support.huaweicloud.com/usermanual-mgc/public_sys-resources/note_3.0-zh-cn.png)
   两种策略类型的授权范围方案均选择"**所有资源**"。
   - **系统策略** ：迁移中心包含的系统策略参见[表1]，请根据实际的权限需求选择为用户组授予的系统策略。
      表1MgC系统权限 
     | 系统角色/策略名称              | 描述         | 类别 |
     |:---|:---|:---|
     | MgC FullAccess           | 迁移中心管理员权限，拥有操作MgC的所有权限。                 | 系统策略                            |
     | MgC ReadOnlyAccess     | 迁移中心只读权限，仅能查看MgC资源，无法进行操作。               | 系统策略                            |
     | MgC DiscoveryAccess    | 迁移中心资源发现操作权限，拥有操作资源发现功能的权限和只读权限。       | 系统策略                           |
     | MgC AssessAccess      | 迁移中心评估操作权限，拥有操作评估功能、资源发现功能的权限和只读权限。       | 系统策略                             |
     | MgC MigrateAccess     | 迁移中心迁移操作权限，拥有操作迁移功能、评估功能、资源发现功能的权限和只读权限。 | 系统策略                            |
     | MgC AppDiscoveryAccess | 迁移中心资源采集操作权限，拥有操作资源采集功能、资源发现功能的权限和只读权限。 | 系统策略                           |
     | MgC JourneyAccess       | 迁移中心迁移旅程操作权限，拥有操作迁移旅程功能的权限。              | 系统策略                             |
        
     
   
   - **自定义策略** ：自定义策略作为系统策略的扩展和补充，提供了更为精细的权限控制。请您根据实际业务场景，创建相应功能的自定义策略并授权给用户组。迁移中心各场景及其功能所需的授权项请参见[基于角色与策略的IAM用户自定义权限](https://support.huaweicloud.com/usermanual-mgc/mgc_03_0145.html)。创建方法参考[创建自定义策略](https://support.huaweicloud.com/usermanual-iam/iam_01_0605.html)。
     
2. [创建用户并加入用户组](https://support.huaweicloud.com/usermanual-iam/iam_02_0001.html)
   在IAM控制台创建用户，并将其加入[1.创建用户组并授权]中创建的用户组。
   
3. IAM用户首次使用MgC的特定功能时，需要通过以下任意一种方式授予委托权限：
   - **方式一** **（推荐）** ：使用华为账号登录[迁移中心管理控制台](https://console.huaweicloud.com/mgc/?#/guide)，进入相关功能界面，同意相关功能的委托权限。
   
   - **方式二** **（备选）** ：
     1. 使用华为账号登录[IAM服务管理控制台](https://console.huaweicloud.com/iam/?locale=zh-cn#/iam/users)。
     
     2. 创建委托授权自定义策略。创建方法参考[创建自定义策略](https://support.huaweicloud.com/usermanual-iam/iam_01_0605.html#section1)。授权项信息如下：
        ```
        {
            "Version": "1.1",
            "Statement": [
                {
                    "Effect": "Allow",
                    "Action": [
                        "iam:quotas:listQuotas",
                        "iam:permissions:listRolesForAgency",
                        "iam:roles:listRoles",
                        "iam:agencies:listAgencies",
                        "iam:roles:createRole",
                        "iam:agencies:createAgency",
                        "iam:roles:updateRole",
                        "iam:permissions:grantRoleToAgency",
                        "iam:permissions:revokeRoleFromAgency"
                    ]
                }
            ]
        }
        ```
        
     
     3. 将自定义策略授予IAM用户所在用户组。确保IAM用户拥有该委托授权权限。
      
    
4. [用户登录](https://support.huaweicloud.com/usermanual-iam/iam_01_0552.html)并验证权限
   新创建的用户登录控制台，切换至授权区域，验证权限：
   - 在"服务列表"中选择迁移中心 MgC，进入MgC主界面，根据您授予的权限可以进行对应操作，表示授予的权限已生效。
   
   - 在"服务列表"中选择除迁移中心 MgC外的任一服务，若提示权限不足，表示授予的权限已生效。
     
 
#### MgC自定义策略样例
如果系统预置的MgC权限，不满足您的授权要求，可以创建自定义策略。。
目前华为云支持以下两种方式创建自定义策略：
- 可视化视图创建自定义策略：无需了解策略语法，按可视化视图导航栏选择云服务、操作、资源、条件等策略内容，可自动生成策略。
- JSON视图创建自定义策略：可以在选择策略模板后，根据具体需求编辑策略内容；也可以直接在编辑框内编写JSON格式的策略内容。
具体创建步骤请参见：[创建自定义策略](https://support.huaweicloud.com/usermanual-iam/iam_01_0605.html)。下面为您介绍常用的MgC自定义策略样例。
- 示例1：资源采集权限策略
  ```
  {
      "Version": "1.1",
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "mgc:*:query*",
                  "mgc:*:discovery",
                  "iam:agencies:listAgencies",
                  "iam:roles:listRoles",
                  "iam:quotas:listQuotas",
                  "iam:permissions:listRolesForAgency"
              ]
          }
      ]
  }
  ```
  
- 示例2：评估推荐权限策略
  ```
  {
      "Version": "1.1",
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "mgc:*:query*",
                  "mgc:*:discovery",
                  "mgc:*:assess*",
                  "iam:agencies:listAgencies",
                  "iam:roles:listRoles",
                  "iam:quotas:listQuotas",
                  "iam:permissions:listRolesForAgency"
              ]
          }
      ]
  }
  ```
  
 
