在数据集成模块中同步阿里云部分实例(例如MaxCompute、Hologres、AnalyticDB for PostgreSQL等)的数据时,如果在创建数据源时选择的数据源类型为阿里云实例模式,且实例所属云账号和同步任务的云账号不一致,您需要进行实例跨账号授权的配置,即授权同步任务所属云账号对实例有“读”权限后,才能正常进行数据同步操作。
背景信息
在添加数据源时,您可以选择添加数据源类型为阿里云实例模式,如果实例所属的云账号与进行DataWorks集成配置的云账号不一致,您则需参考下文进行跨账号授权配置。
前提条件
已配置云企业网等网络连通方案,完成两个账号中数据源实例与DataWorks资源组的VPC网络互通,更多信息,请参见网络连通方案。
跨账号授权操作流程
数据源为MaxCompute、Hologres、AnalyticDB for PostgreSQL或AnalyticDB for MySQL
MaxCompute:具体操作,请参见场景:跨账号创建MaxCompute数据源。
Hologres:具体操作,请参见创建Hologres数据源。
AnalyticDB for PostgreSQL:具体操作,请参见创建AnalyticDB for PostgreSQL数据源
AnalyticDB for MySQL:具体操作,请参见创建AnalyticDB for MySQL3.0数据源
数据源为RDS、Hive或Kafka
数据源实例所属云账号操作
登录RAM 访问控制-角色控制台,创建一个RAM角色。具体操作,请参见创建可信实体为阿里云账号的RAM角色。
关键参数:
选择可信实体类型为阿里云账号。
角色名称自定义。
选择信任的云账号为其他账号,填写DataWorks工作空间所属的云账号。
为创建好的RAM角色精确授权。具体操作,请参见在RAM角色页面为RAM角色精确授权。
关键参数:
选择权限类型:选择系统策略。
输入策略名称:参照下表。
实例类型
策略名称
RDS(MySQL、SQL Server、PostgreSQL、MariaDB)
AliyunDataWorksAccessingRdsReadOnlyPolicy
Hive
AliyunDataWorksAccessingDLFReadOnlyPolicy、AliyunDataWorksAccessingEMRReadOnlyPolicy
Kafka
AliyunDataWorksAccessingAlikafkaPolicy
为创建好的RAM角色修改信任策略。具体操作,请参见修改RAM角色的可信实体为阿里云账号。
信任策略:
{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "<DataWorks使用者主账号的云账号ID>@cdp.aliyuncs.com" ] } } ], "Version": "1" }
说明<DataWorks使用者主账号的云账号ID>
需要替换为您的DataWorks工作空间的阿里云账号主账号ID。
DataWorks工作空间所属的云账号操作
进入数据集成页面。
登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的 ,在下拉框中选择对应工作空间后单击进入数据集成。
新增RDS、Hive或Kafka数据源。
关键参数:
参数
说明
数据源类型
阿里云实例模式
实例所属账号
选择其他阿里云主账号。
其他云账号主账号ID
配置RDS、Hive或Kafka实例所属的阿里云账号主账号ID。
RAM账号授权角色名称
配置已创建的RAM角色。
测试连通性。