使用MaxCompute LOAD命令批量导入OSS数据最佳实践—STS方式LOAD开启KMS加密OSS数据

简介: MaxCompute使用load overwrite或load into命令将外部存储的数据(如:oss)导入到MaxCompute前的授权操作。

MaxCompute使用load overwriteload into命令将外部存储的数据(如:oss)导入到MaxCompute前的授权操作。

一.导入之前需要先对MaxCompute进行授权。

  • 当MaxCompute和OSS的Owner是同一个账号时,单击此处完成一键授权。(本文已此为例进行授权说明)
  • 当MaxCompute和OSS的Owner不是同一个账号时,需进行自定义授权,详情请参见STS模式授权

二.由于OSS数据设置KMS加密,所以需要目标Bucket的文件访问权限。

   否则报以下错误:

image

解决方案:

第一种方式:

1.登陆RAM访问控制台,点击RAM角色管理

2.搜索框搜索odps使用访问oss的角色AliyunODPSDefaultRole

3.添加权限

4.选择自定义策略权限。(前提要新建完成自定义策略,脚本模式配置可参考如下:)

{

 "Version": "1",

 "Statement": [

   {

     "Effect": "Allow",

     "Action": [

   "kms:Decrypt"

     ],

     "Resource": [

       "acs:kms:*:xxxxx:*"//示例表示具有当前所有KMS的解密权限。若要针对某个KMS密钥进行解密,此处可输入对应的CMK ID。

     ]

   }

 ]

}

5.点击确定

image

image

 

第二种方式:

1.登陆RAM访问控制台,点击RAM角色管理

2.搜索框搜索odps使用访问oss的角色AliyunODPSDefaultRole

3.添加权限

4.选择系统策略权限AliyunKMSFullAccess(管理密钥管理服务(KMS)的权限),管理KMS最大的权限可以选择使用

5.点击确定

image

三.验证结果

image

 

image

 

原文链接

本文为阿里云原创内容,未经允许不得转载。

原文地址:https://www.cnblogs.com/yunqishequ/p/14922483.html