当您使用资源组对资源进行分组管理时,可以结合访问控制(RAM),在单个阿里云账号内实现资源的隔离和精细化权限管理。本文总结了数据传输服务DTS对资源组的支持情况,以及资源组级别的授权操作步骤。
-
只有支持资源组的资源类型和支持资源组级别授权的操作,资源组级别授权才能生效。
-
对于不支持资源组的资源类型,授予资源组范围的权限将无效。在选择资源范围时,请选择账号级别,进行账号级别授权。具体操作,请参见不支持资源组级别授权的操作。
资源组授权的工作原理
您可以使用资源组(Resource Group)对阿里云账号内的资源进行分组管理。例如,为不同的项目创建对应的资源组,并将资源转移到对应的组中,以便集中管理各项目的资源。更多信息,请参见什么是资源组。
在完成资源分组后,您可以为不同的RAM授权主体(RAM用户、RAM用户组或RAM角色)授予指定资源组范围的权限,从而限定这个授权主体只能管理该资源组内的资源。更多信息,请参见资源分组和授权。
这种授权方式的优点有:
-
权限精细化:确保每个身份能获得最准确的资源访问权限,避免账号下的多个项目的资源混合管理。
-
良好的扩展性:后续新增资源时,只需将其加入该资源组,RAM身份便会自动获得新资源的相应权限,无需再次授权。
为RAM用户授予资源组级别的权限
下面以RAM用户为例,介绍授予指定资源组内数据传输服务DTS资源权限的操作步骤。
1. 前置步骤
2. 进行资源组级别授权
您可以通过以下任一方式进行资源组级别授权。
方式一:在资源管理控制台中授权
通过资源组的权限管理功能为指定 RAM 用户授权。详情操作可参见为RAM身份授予资源组范围的权限。
方式二:在 RAM 控制台中授权
通过RAM控制台为指定 RAM 用户进行资源组级别授权。详细操作可参见为RAM用户授权。
支持资源组的资源类型
数据传输服务DTS支持资源组的资源类型如下表所示:
|
云服务 |
云服务代码 |
资源类型 |
|
数据传输服务DTS |
dts |
instance : 实例 |
对于暂不支持资源组的资源类型,如有需要,您可以在资源组控制台提交反馈。

不支持资源组级别授权的操作
数据传输服务DTS中不支持资源组级别授权的操作(Action)如下:
|
操作(Action) |
操作描述 |
|
dts:AddTags |
- |
|
dts:AllocateRAGFlowInstancePublicConnection |
- |
|
dts:CheckDefaultEventRule |
- |
|
dts:CheckDefaultRole |
- |
|
dts:ConfigureSynchronizationJobReplicatorCompare |
配置同步全镜像匹配开关。 |
|
dts:ConfigureZeroETLJob |
- |
|
dts:CountJobByCondition |
按条件统计任务 |
|
dts:CreateDocParserJob |
创建文档解析任务。 |
|
dts:CreateGadInstance |
- |
|
dts:CreateRAGFlowInstance |
- |
|
dts:CreateRAGKnowledgeBase |
- |
|
dts:CreateServiceLinkedRoleForZeroETL |
- |
|
dts:CreateZeroETLInstance |
- |
|
dts:DeleteGadInstance |
- |
|
dts:DeleteNetWorkPath |
- |
|
dts:DeleteRAGFlowInstance |
- |
|
dts:DescribeBasicConfigs |
- |
|
dts:DescribeCheckJobDiffDetails |
- |
|
dts:DescribeCheckJobStatus |
- |
|
dts:DescribeCheckJobs |
包含迁移任务关联的校验任务和同步任务关联的校验任务 |
|
dts:DescribeClusterNodeInfo |
- |
|
dts:DescribeConnectionStatus |
测试迁移任务的执行节点与源库、目标库的连通性。 |
|
dts:DescribeDTSIP |
获取源库和目标库的白名单都需要添加的DTS IP地址。 |
|
dts:DescribeDnsResolveResult |
- |
|
dts:DescribeDocParserJobResult |
获取文档解析任务的结果。 |
|
dts:DescribeDocParserJobStatus |
查询文档解析任务的执行状态。 |
|
dts:DescribeDomainRegions |
- |
|
dts:DescribeDtsJob |
- |
|
dts:DescribeDtsJobsTransmission |
- |
|
dts:DescribeEventMetaInfo |
- |
|
dts:DescribeGadInstanceDetail |
- |
|
dts:DescribeGadInstanceDtsMembers |
- |
|
dts:DescribeGadInstances |
查询GAD实例列表 |
|
dts:DescribeHistoryEvents |
- |
|
dts:DescribeHistoryEventsStat |
- |
|
dts:DescribeInstanceInventory |
- |
|
dts:DescribeMigrationJobs |
查询数据迁移实例列表和各迁移实例的详情。 |
|
dts:DescribeNetWorkNisAnalysis |
- |
|
dts:DescribePreCheckCreateGadOrderResult |
查询预检查创建GAD订单任务结果 |
|
dts:DescribeRAGDocumentParseResult |
- |
|
dts:DescribeRAGFlowAvailableZones |
- |
|
dts:DescribeRAGFlowInstanceAttribute |
- |
|
dts:DescribeRAGFlowInstancePrice |
- |
|
dts:DescribeRdsInfo |
- |
|
dts:DescribeSubscriptionInstances |
查询订阅实例列表和各订阅实例详情。 |
|
dts:DescribeSynchronizationJobStatusList |
老版获取同步作业状态列表。 |
|
dts:DescribeSynchronizationObjectModifyStatus |
老版查询修改同步对象任务的执行状态。 |
|
dts:DescribeTagKeys |
调用DescribeTagKeys接口查找一个迁移、同步或订阅实例绑定的所有标签。 |
|
dts:DescribeTagValues |
调用DescribeTagValues接口查找一个迁移、同步或订阅实例绑定的标签键对应的所有值。 |
|
dts:DescribeUserEventConfig |
- |
|
dts:DescribeWorkflowJobResult |
- |
|
dts:DescribeZeroETLInstanceLimitation |
- |
|
dts:DetachGadInstanceDbMember |
移除从角色 |
|
dts:DisableRAGFlowInstanceSSO |
- |
|
dts:EnableRAGFlowInstanceSSO |
- |
|
dts:Feedback |
- |
|
dts:GenerateChatCompletion |
- |
|
dts:GetAnswer |
- |
|
dts:GetLindormInstanceInner |
- |
|
dts:GetSimilarQuestions |
- |
|
dts:InitDtsRdsInstance |
调用InitDtsRdsInstance在全球多活数据库集群的节点中初始化一个内置账号,DTS使用该账号连接节点并进行同步任务。 |
|
dts:ListRAGDocument |
- |
|
dts:ListRAGKnowledgeBase |
- |
|
dts:LoginRAGFlowInstance |
- |
|
dts:ModifyConsumerGroupPassword |
老版修改消费组密码。 |
|
dts:ModifyDtsJobDedicatedCluster |
更换任务运行的独享集群。 |
|
dts:ModifyEventScheduleTime |
- |
|
dts:ModifyGadInstanceName |
修改GAD实例名称 |
|
dts:ModifyRAGFlowInstanceDescription |
- |
|
dts:ModifyRAGFlowInstanceSSO |
- |
|
dts:ModifyRAGFlowSecurityIps |
- |
|
dts:Ping |
- |
|
dts:PreCheckCreateGadOrder |
预检查创建GAD订单 |
|
dts:PreviewData |
- |
|
dts:PreviewSql |
- |
|
dts:PromoteToMaster |
- |
|
dts:RemoveTags |
- |
|
dts:SaveEtlJob |
- |
|
dts:ShieldPrecheck |
老版屏蔽预检查。 |
|
dts:StartReverseWriter |
调用StartReverseWriter接口启动CreateReverseDtsJob接口创建的反向任务。 |
|
dts:SubmitDocParserJob |
- |
|
dts:SwitchPhysicalDtsJobToCloud |
MSSQL物理迁移上云 |
|
dts:TagResources |
调用TagResources接口为一个或多个迁移、同步和订阅实例绑定标签。 |
|
dts:UntagResources |
为迁移、同步和订阅实例解绑标签。 |
|
dts:UploadRAGDocument |
- |
对于不支持资源组授权的操作,授权时资源范围选择资源组级别将无效。如果仍需要RAM用户有上述操作权限,您需要创建自定义权限策略,授权时资源范围选择账号级别。
以下是两个自定义权限策略示例,您可以根据实际需要调整策略内容。
-
允许不支持资源组级别授权的全部只读操作:
Action中列举不支持资源组级别授权的所有只读操作。{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "dts:CheckDefaultEventRule", "dts:CheckDefaultRole", "dts:CountJobByCondition", "dts:CreateServiceLinkedRoleForZeroETL", "dts:CreateZeroETLInstance", "dts:DescribeBasicConfigs", "dts:DescribeCheckJobs", "dts:DescribeClusterNodeInfo", "dts:DescribeConnectionStatus", "dts:DescribeDTSIP", "dts:DescribeDnsResolveResult", "dts:DescribeDocParserJobResult", "dts:DescribeDocParserJobStatus", "dts:DescribeDomainRegions", "dts:DescribeDtsJobsTransmission", "dts:DescribeEventMetaInfo", "dts:DescribeGadInstanceDetail", "dts:DescribeGadInstanceDtsMembers", "dts:DescribeGadInstances", "dts:DescribeHistoryEvents", "dts:DescribeHistoryEventsStat", "dts:DescribeInstanceInventory", "dts:DescribeMigrationJobs", "dts:DescribePreCheckCreateGadOrderResult", "dts:DescribeRAGFlowAvailableZones", "dts:DescribeRAGFlowInstancePrice", "dts:DescribeSubscriptionInstances", "dts:DescribeSynchronizationJobStatusList", "dts:DescribeSynchronizationObjectModifyStatus", "dts:DescribeTagKeys", "dts:DescribeTagValues", "dts:DescribeUserEventConfig", "dts:DescribeWorkflowJobResult", "dts:DescribeZeroETLInstanceLimitation", "dts:GenerateChatCompletion", "dts:LoginRAGFlowInstance", "dts:ModifyConsumerGroupPassword", "dts:Ping", "dts:PreviewData", "dts:PreviewSql", "dts:PromoteToMaster", "dts:ShieldPrecheck" ], "Resource": "*" } ] } -
允许不支持资源组级别授权的全部操作:
Action中列举不支持资源组级别授权的全部操作。{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "dts:AddTags", "dts:AllocateRAGFlowInstancePublicConnection", "dts:CheckDefaultEventRule", "dts:CheckDefaultRole", "dts:ConfigureSynchronizationJobReplicatorCompare", "dts:ConfigureZeroETLJob", "dts:CountJobByCondition", "dts:CreateDocParserJob", "dts:CreateGadInstance", "dts:CreateRAGFlowInstance", "dts:CreateRAGKnowledgeBase", "dts:CreateServiceLinkedRoleForZeroETL", "dts:CreateZeroETLInstance", "dts:DeleteGadInstance", "dts:DeleteNetWorkPath", "dts:DeleteRAGFlowInstance", "dts:DescribeBasicConfigs", "dts:DescribeCheckJobDiffDetails", "dts:DescribeCheckJobStatus", "dts:DescribeCheckJobs", "dts:DescribeClusterNodeInfo", "dts:DescribeConnectionStatus", "dts:DescribeDTSIP", "dts:DescribeDnsResolveResult", "dts:DescribeDocParserJobResult", "dts:DescribeDocParserJobStatus", "dts:DescribeDomainRegions", "dts:DescribeDtsJob", "dts:DescribeDtsJobsTransmission", "dts:DescribeEventMetaInfo", "dts:DescribeGadInstanceDetail", "dts:DescribeGadInstanceDtsMembers", "dts:DescribeGadInstances", "dts:DescribeHistoryEvents", "dts:DescribeHistoryEventsStat", "dts:DescribeInstanceInventory", "dts:DescribeMigrationJobs", "dts:DescribeNetWorkNisAnalysis", "dts:DescribePreCheckCreateGadOrderResult", "dts:DescribeRAGDocumentParseResult", "dts:DescribeRAGFlowAvailableZones", "dts:DescribeRAGFlowInstanceAttribute", "dts:DescribeRAGFlowInstancePrice", "dts:DescribeRdsInfo", "dts:DescribeSubscriptionInstances", "dts:DescribeSynchronizationJobStatusList", "dts:DescribeSynchronizationObjectModifyStatus", "dts:DescribeTagKeys", "dts:DescribeTagValues", "dts:DescribeUserEventConfig", "dts:DescribeWorkflowJobResult", "dts:DescribeZeroETLInstanceLimitation", "dts:DetachGadInstanceDbMember", "dts:DisableRAGFlowInstanceSSO", "dts:EnableRAGFlowInstanceSSO", "dts:Feedback", "dts:GenerateChatCompletion", "dts:GetAnswer", "dts:GetLindormInstanceInner", "dts:GetSimilarQuestions", "dts:InitDtsRdsInstance", "dts:ListRAGDocument", "dts:ListRAGKnowledgeBase", "dts:LoginRAGFlowInstance", "dts:ModifyConsumerGroupPassword", "dts:ModifyDtsJobDedicatedCluster", "dts:ModifyEventScheduleTime", "dts:ModifyGadInstanceName", "dts:ModifyRAGFlowInstanceDescription", "dts:ModifyRAGFlowInstanceSSO", "dts:ModifyRAGFlowSecurityIps", "dts:Ping", "dts:PreCheckCreateGadOrder", "dts:PreviewData", "dts:PreviewSql", "dts:PromoteToMaster", "dts:RemoveTags", "dts:SaveEtlJob", "dts:ShieldPrecheck", "dts:StartReverseWriter", "dts:SubmitDocParserJob", "dts:SwitchPhysicalDtsJobToCloud", "dts:TagResources", "dts:UntagResources", "dts:UploadRAGDocument" ], "Resource": "*" } ] }
获得账号级别权限的RAM用户或RAM角色,能够操作整个账号范围内的相关资源。请务必确认所授予的权限是否符合预期,遵从最小授权原则谨慎分配权限。
常见问题
如何查看当前资源属于哪个资源组?
-
方式一:单击资源名称,进入资源的详情页面,即可查看到当前资源的资源组。
-
方式二:登录资源管理控制台,单击,在左侧选择目标资源所属账号(默认为当前账号),通过筛选条件定位目标资源,即可查看其所属资源组。
如何查看当前产品在某个资源组下的所有资源?
如何批量修改多个资源的资源组?
登录资源管理控制台,单击,在目标资源组所在行的操作列下,单击资源管理以进入资源管理页面。通过筛选条件定位多个目标资源,批量勾选第一列的复选框后单击下方转移资源组,并按页面提示完成资源组修改。