数据湖探索 DLI-自定义DLI委托权限:步骤1:在IAM控制台创建云服务委托并授权
步骤1:在IAM控制台创建云服务委托并授权
- 登录管理控制台。
- 单击右上方登录的用户名,在下拉列表中选择“统一身份认证”。
- 在左侧导航栏中,单击“委托”。
- 在“委托”页面,单击“创建委托”。
- 在“创建委托”页面,设置如下参数:
- 委托名称:按需填写,例如“dli_obs_agency_access”。
- 委托类型:选择“云服务”。
- 云服务:(“委托类型”选择“云服务”时出现此参数项。)在下拉列表中选择“DLI"。
- 持续时间:选择“永久”。
- 描述:非必选,可以填写“拥有OBS OperateAccess权限的委托”。
图2 创建委托
- 配置完委托的基本信息后,单击“下一步”。
- 授予当前委托所需的权限策略,单击“新建策略”。
- 配置策略信息。
- 输入策略名称,本例:dli-obs-agency。
- 选择“JSON视图”。
- 在策略内容中粘贴自定义策略。
本例权限包含访问和使用OBS的权限,适用于以下场景:DLI Flink作业下载OBS对象、OBS/DWS数据源(外表)、日志转储、使用savepoint、开启Checkpoint。DLI Spark作业下载OBS对象、读写OBS外表。
更多Flink作业常见委托权限配置请参考常见场景的委托权限策略。{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:bucket:GetBucketPolicy", "obs:bucket:GetLifecycleConfiguration", "obs:bucket:GetBucketLocation", "obs:bucket:ListBucketMultipartUploads", "obs:bucket:GetBucketLogging", "obs:object:GetObjectVersion", "obs:bucket:GetBucketStorage", "obs:bucket:GetBucketVersioning", "obs:object:GetObject", "obs:object:GetObjectVersionAcl", "obs:object:DeleteObject", "obs:object:ListMultipartUploadParts", "obs:bucket:HeadBucket", "obs:bucket:GetBucketAcl", "obs:bucket:GetBucketStoragePolicy", "obs:object:AbortMultipartUpload", "obs:object:DeleteObjectVersion", "obs:object:GetObjectAcl", "obs:bucket:ListBucketVersions", "obs:bucket:ListBucket", "obs:object:PutObject" ], "Resource": [ "OBS:*:*:bucket:bucketName",//请替换bucketName为对应的桶名称 "OBS:*:*:object:*" ] }, { "Effect": "Allow", "Action": [ "obs:bucket:ListAllMyBuckets" ] } ] }
- 按需输入策略描述。
- 新建策略完成后,单击“下一步”,返回委托授权页面。
- 选择步骤8新建的自定义策略。
图3 选择自定义策略
- 单击“下一步”,选择委托的授权范围。
了解更多授权操作说明请参考创建用户组并授权。
- 所有资源:授权后,IAM用户可以根据权限使用账号中所有资源,包括企业项目、区域项目和全局服务资源。
- 全局服务资源:全局服务部署时不区分区域,访问全局级服务,不需要切换区域,全局服务不支持基于区域项目授权。如对象存储服务(OBS)、内容分发网络(CDN)等。授权后,用户根据权限使用全局服务的资源。
- 指定区域项目资源:授权后,IAM用户根据权限使用所选区域项目中的资源,未选择的区域项目中的资源,该IAM用户将无权访问。
- 指定企业项目资源:授权后,IAM用户根据权限使用所选企业项目中的资源。如企业项目A包含资源B,资源B部署在北京四和上海二,IAM用户所在用户组关联企业项目A后,北京四和上海二的资源B用户都可访问,不在企业项目A内的其他资源,该IAM用户将无权访问。
本例自定义策略中是OBS权限,因此选择全局服务资源。如果使用的是DLI权限,推荐选择“指定区域项目资源”。
- 单击“确定”,完成授权。