基于角色与策略的IAM用户自定义权限
迁移中心MgC在统一身份认证服务(IAM)能力基础上,为用户提供细粒度的权限管理功能,帮助用户灵活便捷地对账号下的IAM用户设置不同的MgC资源权限,结合权限策略实现权限隔离。
本节介绍IAM用户在使用MgC各场景及其相应功能时需要配置的自定义权限策略。配置自定义策略权限的方法,请参考创建自定义策略。

在实际业务场景中,如果同一场景下需要使用多个功能,可以将这些功能所需的权限Action整合到一个自定义权限策略中,无需为每个功能单独创建自定义策略。
IAM用户委托授权权限
IAM用户在首次使用MgC的特定功能时,需要通过授予MgC创建自定义策略的委托权限。有关该委托授权权限的自定义策略,请参见表1。
使用场景 | 功能 | 功能说明 | 是否必选 | 权限Action |
|---|---|---|---|---|
IAM委托权限 | 委托授权 | 使用MgC部分功能时需要进行委托授权操作。 | 必选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iam:agencies:listAgencies",
"iam:agencies:createAgency",
"iam:roles:listRoles",
"iam:roles:updateRole",
"iam:quotas:listQuotas",
"iam:roles:createRole",
"iam:permissions:listRolesForAgency",
"iam:permissions:grantRoleToAgency",
"iam:permissions:revokeRoleFromAgency",
"iam:permissions:grantRoleToAgencyOnProject",
"iam:permissions:checkRoleForAgencyOnProject"
]
}
]
} |
主机批量迁移
在进行主机批量迁移时,所需的功能及相关权限配置,请参见表2。
使用场景 | 功能 | 功能说明 | 是否必选 | 权限Action |
|---|---|---|---|---|
主机批量迁移 | 项目管理 | 创建应用迁移项目。 | 必选 | 需要授予IAM用户“MgC DiscoveryAccess”、“MgC AppDiscoveryAccess”、“MgC MigrateAccess”和“MgC AssessAccess”这些系统策略。有关MgC包含的系统策略,请参见MgC系统策略说明。 |
主机资源采集 | 采集需要迁移的主机信息。 | 必选 | ||
创建主机批量迁移计划 | 创建主机迁移计划,规划主机迁移批次,配置迁移参数。 | 必选 | ||
添加源端待迁移主机 | 访问资源列表权限,勾选待迁移主机。 | 必选 | ||
绑定已有目的端 | 为源端主机绑定华为云已购买的主机作为目的端。 | 目的端已存在时必选 | 分别创建以下两个自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs:cloudServerFlavors:get",
"ecs:cloudServers:listServersDetails",
"vpc:securityGroups:get",
"vpc:vpcs:list",
"vpc:subnets:get",
"evs:volumes:list",
"ims:images:get"
]
}
]
} {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"obs:bucket:ListAllMyBuckets"
]
}
]
} | |
规格评估 | 根据源端主机规格,系统会自动推荐在华为云与之对应的主机规格作为目的端。 | 通过系统自动购买目的端时必选。 | 分别创建以下两个自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs:cloudServerFlavors:get",
"ecs:availabilityZones:list",
"vpc:securityGroups:get",
"vpc:subnets:get",
"vpc:vpcs:list",
"kms:cmk:list",
"deh:dedicatedHosts:list",
"deh:dedicatedHostTypes:list",
"evs:types:get",
"ims:images:list"
]
}
]
} {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"tms:predefineTags:list"
]
}
]
} | |
消息通知 | 要启用迁移参数配置中的消息通知功能需要SMN相关权限。 | 可选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"smn:topic:list"
]
}
]
} | |
创建主机批量迁移工作流 | 创建主机迁移工作流并执行,完成主机批量迁移。 | 必选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"vpc:vpcs:list",
"vpc:vpcs:get",
"vpc:subnets:get",
"vpc:securityGroups:get",
"eps:enterpriseProjects:list",
"eps:enterpriseProjects:get",
"kms:cmk:list",
"kms:cmk:get",
"kms:dek:create",
"kms:dek:decrypt",
"sms:server:migrationServer",
"sms:server:queryServer",
"smn:topic:list"
]
}
]
} | |
主机迁移配额校验 | 检查迁移账号在目的端区域的资源配额是否满足要求。 | 必选 | 系统委托授权功能,使用相关功能时,系统将自动创建自定义策略,无需用户手动创建,但用户需要拥有委托授权权限,详情请参见表1。 系统自动创建的自定义策略以及包含的Action,请参见委托权限说明。 | |
工作流添加后置阶段和脚本步骤 | 在迁移工作流标准流程中迁移阶段或步骤。 | 可选 |
主机跨可用区批量迁移
在进行主机可用区批量迁移时,所需的功能及相关权限配置,请参见表3。
使用场景 | 功能 | 功能说明 | 是否必选 | 权限Action |
|---|---|---|---|---|
主机跨可用区批量迁移 | 项目管理 | 创建应用迁移项目。 | 必选 | 需要授予IAM用户“MgC DiscoveryAccess”、“MgC AppDiscoveryAccess”、“MgC MigrateAccess”和“MgC AssessAccess”这些系统策略。有关MgC包含的系统策略,请参见MgC系统策略说明。 |
主机资源采集 | 采集需要迁移的主机信息。 | 必选 | ||
创建主机跨可用区批量迁移计划 | 创建主机迁移计划,规划主机迁移批次,配置迁移参数。 | 必选 | ||
选择源端可用区 | 选择待迁移主机所在的区域及可用区。 | 必选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs:cloudServerFlavors:get",
"ecs:availabilityZones:list"
]
}
]
} | |
配置目的端 | 系统默认匹配与源端主机相同规格的目的端主机。 | 可选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"evs:types:get"
}
]
} | |
消息通知 | 要启用迁移参数配置中的消息通知功能需要SMN相关权限。 | 可选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"smn:topic:list"
]
}
]
} | |
创建主机跨可用区批量迁移工作流 | 创建主机跨可用区迁移工作流并执行,完成主机批量迁移。 | 必选 | 系统委托授权功能,使用相关功能时,系统将自动创建自定义策略,无需用户手动创建,但用户需要拥有委托授权权限,详情请参见表1。 系统自动创建的自定义策略以及包含的Action,请参见委托权限说明。 | |
工作流添加后置阶段和脚本步骤 | 在迁移工作流标准流程中迁移阶段或步骤。 | 可选 |
主机跨区域迁移
在进行主机跨区域迁移时,所需的功能及相关权限配置,请参见表4。
使用场景 | 功能 | 功能说明 | 是否必选 | 权限Action |
|---|---|---|---|---|
主机跨区域迁移 | 项目管理 | 创建应用迁移项目 | 必选 | 需要授予IAM用户“MgC DiscoveryAccess”、“MgC AppDiscoveryAccess”、“MgC MigrateAccess”和“MgC AssessAccess”这些系统策略。有关MgC包含的系统策略,请参见MgC系统策略说明。 |
主机资源采集 | 采集需要迁移的主机信息。 | 必选 | ||
创建主机可用区批量迁移计划 | 创建主机跨区域迁移计划,规划主机迁移批次,配置迁移参数。 | 必选 | ||
选择源端待迁移主机 | 选择源端主机所在区域,并勾选需要迁移的主机。 | 必选 | ||
配置目的端 | 选择目的端区域以及可用区,可自动或手动配置目的端网络,自定义目的端规格。 | 可选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"vpc:vpcs:list",
"vpc:subnets:get",
"vpc:securityGroups:get",
"ecs:availabilityZones:list",
"ecs:cloudServerFlavors:get",
"evs:types:get"
]
}
]
} | |
消息通知 | 要启用迁移参数配置中的消息通知功能需要SMN相关权限。 | 可选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"smn:topic:list"
]
}
]
} | |
创建主机跨区域迁移工作流 | 创建主机跨区域迁移工作流并执行,完成主机批量迁移。 | 必选 | 系统委托授权功能,使用相关功能时,系统将自动创建自定义策略,无需用户手动创建,但用户需要拥有委托授权权限,详情请参见表1。 系统自动创建的自定义策略以及包含的Action,请参见委托权限说明。 | |
工作流添加后置阶段和脚本步骤 | 在迁移工作流标准流程中迁移阶段或步骤。 | 可选 |
存储迁移
在进行存储类型的资源迁移时,所需的功能及相关权限配置,请参见表5。
使用场景 | 功能 | 功能说明 | 是否必选 | 权限Action |
|---|---|---|---|---|
存储迁移 | 项目管理 | 创建应用迁移项目。 | 必选 | 需要授予IAM用户“MgC DiscoveryAccess”、“MgC AppDiscoveryAccess”、“MgC MigrateAccess”和“MgC AssessAccess”这些系统策略。有关MgC包含的系统策略,请参见MgC系统策略说明。 |
采集存储资源 | 采集需要迁移的存储资源信息。 | 必选 | ||
| 创建对象存储/文件存储/对象存储跨区域批量迁移计划,规划存储资源迁移批次,配置迁移参数。 | 必选 | ||
创建目的端 | 迁移中心支持将对象存储数据迁移到弹性文件系统,也支持将文件存储数据迁移到OBS桶。请根据实际需求,提前在华为云创建目的端对象桶或弹性文件系统。 | 必选 | 创建OBS桶和弹性文件系统所需权限,请分别参考: | |
迁移集群管理 | 迁移集群是专为存储工作流提供协作中的核心组件,通过集群可以创建和管理迁移节点、列举节点,部署和升级迁移插件,确保存储工作流顺利运行。 | 必选 | 需要授予IAM用户“OMS Administrator”系统策略。同时,还需要创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kps:domainKeypairs:list",
"nat:natGateways:list",
"vpc:vpcs:list",
"vpc:subnets:get",
"ecs:cloudServerFlavors:get"
]
}
]
} | |
消息通知 | 要启用消息通知功能所需的SMN相关权限。 | 可选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"smn:topic:list"
]
}
]
} | |
凭证加密 | 创建迁移计划时使用KMS密钥加密所需权限。 | 可选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kms:cmk:get",
"kms:cmk:list"
]
}
]
} | |
文件存储批量迁移计划模板批量导入 | 通过模板批量导入源端文件存储资源。 | 可选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"obs:object:GetObject",
"obs:bucket:ListBucket",
"obs:bucket:ListAllMyBuckets"
]
}
]
} | |
创建存储迁移工作流 | 通过迁移计划创建工作流,完成存储迁移。 | 必选 | 系统委托授权功能,使用相关功能时,系统将自动创建自定义策略,无需用户手动创建,但用户需要拥有委托授权权限,详情请参见表1。 系统自动创建的自定义策略以及包含的Action,请参见委托权限说明。 | |
工作流添加后置阶段和脚本步骤 | 在迁移工作流标准流程中迁移阶段或步骤。 | 可选 |
大数据迁移
在进行大数据迁移时,所需的功能及相关权限配置,请参见表6。
使用场景 | 功能 | 功能说明 | 是否必选 | 权限Action |
|---|---|---|---|---|
大数据迁移 | 项目管理 | 创建大数据迁移项目。 | 必选 | 需要授予IAM用户“MgC MigrateAccess”系统策略。有关MgC包含的系统策略,请参见MgC系统策略说明。 |
连接管理 | 创建源端、目的端连接。 说明: 若使用采集资源功能,则需要MRS服务的只读权限(MRS ReadOnlyAccess)和DLI服务的只读权限(DLI ReadOnlyAccess)。 | 必选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dli:resource:listAllResource",
"mrs:host:list"
]
}
]
} | |
数据迁移 | 创建大数据迁移迁移任务并执行。 | 必选 | 需要授予IAM用户“MgC MigrateAccess”系统策略。有关MgC包含的系统策略,请参见MgC系统策略说明。 |
大数据校验
在进行大数据校验时,所需的功能及相关权限配置,请参见表7。
使用场景 | 功能 | 功能说明 | 是否必选 | 权限Action |
|---|---|---|---|---|
大数据校验 | 项目管理 | 创建大数据迁移项目。 | 必选 | 需要授予IAM用户“MgC MigrateAccess”系统策略。有关MgC包含的系统策略,请参见MgC系统策略说明。 |
连接管理 | 创建源端、目的端连接。 说明: 若使用采集资源功能,则需要MRS服务的只读权限(MRS ReadOnlyAccess)和DLI服务的只读权限(DLI ReadOnlyAccess)。 | 必选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dli:queue:list",
"mrs:host:list"
]
}
]
} | |
任务管理 | 创建并执行源端、目的端对数任务,如需使用通知功能,则需要SMN通知权限,创建自定义任务对数需有OBS上传、下载权限。 | 必选 | 需要授予IAM用户“SMN FullAccess”系统策略。同时,还需要创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"smn:topic:list"
]
}
]
} | |
实例管理 | 可查看任务执行进度、导出错误表、上传错误日志等操作,上传日志需要用户有OBS上传、下载权限。 | 可选 | 创建以下自定义策略并授权给IAM用户。 {
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"obs:object:GetObject",
"obs:object:PutObject"
]
}
]
} |

