MaxCompute使用load overwrite或load into命令將外部存儲的數據(如:oss)導入到MaxCompute前的授權操作。
一.導入之前需要先對MaxCompute進行授權。
- 當MaxCompute和OSS的Owner是同一個賬號時,單擊此處完成一鍵授權。(本文已此為例進行授權說明)
- 當MaxCompute和OSS的Owner不是同一個賬號時,需進行自定義授權,詳情請參見STS模式授權
二.由於OSS數據設置KMS加密,所以需要目標Bucket的文件訪問權限。
否則報以下錯誤:
解決方案:
第一種方式:
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.點擊確定
第二種方式:
1.登陸RAM訪問控制檯,點擊RAM角色管理
2.搜索框搜索odps使用訪問oss的角色AliyunODPSDefaultRole
3.添加權限
4.選擇系統策略權限AliyunKMSFullAccess(管理密鑰管理服務(KMS)的權限),管理KMS最大的權限可以選擇使用
5.點擊確定
三.驗證結果
最後本文實踐主要說明使用load overwrite或load into命令將外部存儲的數據(如:oss)導入到MaxCompute前的授權問題,如有需要進一步詳細瞭解後續如何導入數據,請參見:LOAD
大家如果對MaxCompute有更多諮詢或者建議,歡迎掃碼加入 MaxCompute開發者社區釘釘群,或點擊鏈接 申請加入。