本文介紹資料移轉之前的準備工作。
步驟一:建立目標儲存空間
建立目標儲存空間,用於存放遷移的資料。具體操作,請參見建立儲存空間。
步驟二:登入控制台的RAM使用者添加許可權
該RAM使用者用於遷移使用。在建立角色和進行遷移實施操作時,需要在該使用者下進行操作。請盡量在源Bucket或者目的Bucket所在的主帳號下建立該RAM使用者。
如果沒有建立RAM使用者,可以建立RAM使用者並授權。
如果沒有建立RAM使用者,可以建立RAM使用者並授權。
登入主帳號所在的RAM控制台,在使用者頁面,單擊剛建立的RAM使用者 操作 列的 添加許可權。
系統策略:管理OSS線上遷移服務的許可權(AliyunOSSImportFullAccess)。
自訂權限原則:該策略必須包含
ram:CreateRole
、ram:CreatePolicy
、ram:AttachPolicyToRole
、ram:ListRoles
許可權。可參考建立自訂權限原則進行許可權管理,以下是相關的權限原則指令碼代碼:
{ "Version":"1", "Statement":[ { "Effect":"Allow", "Action":[ "ram:CreateRole", "ram:CreatePolicy", "ram:AttachPolicyToRole", "ram:ListRoles" ], "Resource":"*" } ] }
步驟三:目的Bucket授權
請根據目的Bucket是否歸屬於本帳號,完成相應的操作。
目的Bucket歸屬於本帳號
一鍵自動授權:
強烈建議您使用遷移控制台自動授權角色進行一鍵授權操作,該操作請在遷移實施 > 步驟三 > 授權角色 中實施。
手動授權:
說明手動授權適用於具有特定需求的情境,例如:
為了有效管理多個源Bucket,期望通過一個角色實現對多個Bucket的大量授權。
當前賬戶現有的角色數量即將達到上限,因此不希望再建立過多額外的RAM角色。
其他不適合或無法使用一鍵自動授權的情境。
1、建立用於遷移資料的RAM角色
登入上文建立的RAM使用者所在的RAM控制台,在角色詳情頁面單擊 建立角色。
可信實體類型選擇 阿里雲服務。
角色類型選擇 普通服務角色。
輸入 角色名稱(角色名稱務必全部小寫)。
受信服務選擇 線上遷移服務。
2、目的Bucket授權
在角色頁面,單擊剛建立的RAM角色 操作 列的 新增授權。
自訂策略:該策略必須包含
oss:List*
、oss:Get*
、oss:Put*
、oss:AbortMultipartUpload*
許可權。
可參考建立自訂權限原則 進行許可權管理,以下是相關的權限原則指令碼代碼:
說明以下權限原則僅供您參考,其中<myDestBucket>為 本帳號下的目的Bucket名稱,請根據實際值替換。
關於OSS權限原則的更多資訊,請參見RAM Policy常見樣本。
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:List*", "oss:Get*", "oss:Put*", "oss:AbortMultipartUpload" ], "Resource": [ "acs:oss:*:*:<myDestBucket>", "acs:oss:*:*:<myDestBucket>/*" ] } ] }
目的Bucket不歸屬於本帳號
1、建立用於遷移資料的RAM角色
登入上文建立的RAM使用者所在的RAM控制台,在角色詳情頁面單擊 建立角色。
可信實體類型選擇 阿里雲服務。
角色類型選擇 普通服務角色。
輸入 角色名稱(角色名稱務必全部小寫)
受信服務選擇 線上遷移服務。
2、目的Bucket授權
在使用Bucket Policy按文法策略進行授權時,新添加的策略會覆蓋已有的策略。請確保新添加的策略包含已有策略的內容,否則可能導致關聯已有策略的操作失敗。
使用目的Bucket所屬帳號登入OSS管理主控台,
在左側導覽列,單擊 Bucket 列表,選擇對應Bucket。
在左側導覽列,選擇 許可權控制 > Bucket 授權策略。
在 按文法策略添加 中,增加自訂Bucket Policy,然後點擊 編輯並儲存。
授予RAM角色列舉、讀取、刪除和寫入該Bucket下所有資源的許可權。
以下權限原則僅供您參考,其中<otherDestBucket>填寫 目的Bucket名稱,<otherUid>填寫 目的Bucket歸屬的主帳號UID,<myUid>填寫 遷移控制台主帳號UID,<roleName>填寫 上文建立的角色名稱,請根據實際值替換。關於OSS權限原則的更多資訊,請參見RAM Policy常見樣本。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"oss:List*",
"oss:Get*",
"oss:Put*",
"oss:AbortMultipartUpload"
],
"Principal": [
"arn:sts::<myUid>:assumed-role/<roleName>/*"
],
"Resource": [
"acs:oss:*:<otherUid>:<otherDestBucket>",
"acs:oss:*:<otherUid>:<otherDestBucket>/*"
]
}
]
}