如要使用 Storage 移轉服務建立、管理或監控移轉作業,使用者帳戶、自動化工具或服務帳戶必須具備 IAM 權限和角色。
這些權限適用於無代理程式和代理程式型移轉作業。如要瞭解如何授予 IAM 角色,請參閱「授予、變更及撤銷資源的存取權」。
必要的 Storage 移轉服務權限
如要與 Storage 移轉服務互動,您必須將下列其中一個預先定義角色或同等自訂權限,授予建立移轉作業的 Google Cloud 專案中的使用者帳戶、群組或服務帳戶:
| 角色 | 主要功能 |
|---|---|
|
Storage 移轉管理員 ( roles/storagetransfer.admin)
|
具備 Storage 移轉服務資源的完整控管權限:
|
|
Storage 移轉使用者 ( roles/storagetransfer.user)
|
建立、更新及執行轉移工作和代理程式集區,但不具備刪除權限:
|
|
Storage 移轉檢視者 ( roles/storagetransfer.viewer)
|
具備唯讀權限,可檢查轉移工作、作業和代理集區。建議用於監控和稽核。 |
如要查看各角色個別權限的詳細清單,請參閱「角色和權限參考資料」。如果您設定轉移工作,將權限委派給使用者管理的服務帳戶,則您的使用者帳戶也必須具備該服務帳戶的服務帳戶使用者 (roles/iam.serviceAccountUser) 角色;請參閱「將服務代理權限委派給使用者管理的服務帳戶」。
在專案中授予 Storage 移轉服務角色
控制台
前往 Google Cloud 控制台的「IAM」(身分與存取權管理) 頁面。
確認已選取移轉專案,然後按一下「授予存取權」。
在「New principals」(新增主體) 欄位中,輸入使用者帳戶電子郵件或服務帳戶。
在「Select a role」(請選擇角色) 下拉式選單中,搜尋並選取
Storage Transfer Admin、Storage Transfer User或Storage Transfer Viewer。選用:如要允許 Google Cloud 控制台檢查缺少的服務代理權限,並在建立移轉作業時提示您自動授予這些權限,請執行下列操作:
- 點選「+ 新增其他角色」。
- 搜尋並選取「Role Viewer」(角色檢視者) (
roles/iam.roleViewer),即可授予resourcemanager.projects.getIamPolicy。
按一下「儲存」。
gcloud
授予 Storage 移轉服務角色:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="PRINCIPAL" \ --role="roles/storagetransfer.ROLE"
更改項目:
- PROJECT_ID:要執行移轉作業的專案。
- PRINCIPAL:您的帳戶,格式為
user:EMAIL(使用者帳戶) 或serviceAccount:SA_EMAIL(服務帳戶)。 - ROLE:
admin、user或viewer。
選用:如要允許 Google Cloud 控制台檢查缺少的服務代理權限,並在建立移轉作業時提示您自動授予權限,請授予角色檢視者角色:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="PRINCIPAL" \ --role="roles/iam.roleViewer"
必要的 Cloud Storage 權限
如要設定使用 Cloud Storage bucket 做為來源、接收器或中繼暫存位置的移轉作業,您的帳戶必須具備查看及修改 bucket IAM 政策的權限,才能將必要角色授予 Storage 移轉服務服務代理或移轉代理帳戶。
帳戶必須符合下列條件:
storage.buckets.getIamPolicystorage.buckets.setIamPolicy
下列任一預先定義的角色可授予這些權限:
- 儲存空間管理員 (
roles/storage.admin) - Storage 繼承 Bucket 擁有者 (
roles/storage.legacyBucketOwner)
授予 bucket 的 Cloud Storage 角色
控制台
- 前往 Google Cloud 控制台的「Cloud Storage bucket」頁面。
- 按一下 bucket 的「Bucket overflow」選單 (),然後選取「編輯權限」。
- 按一下「+ 新增主體」。
- 在「New principals」(新增主體) 欄位中,輸入使用者帳戶電子郵件或服務帳戶。
- 在「Select a role」(請選擇角色) 下拉式選單中,搜尋並選取「
Storage Admin」。 - 按一下「儲存」。
gcloud
執行 gcloud storage buckets add-iam-policy-binding:
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \
--member="PRINCIPAL" \
--role="roles/storage.admin"更改項目:
- BUCKET_NAME:來源、接收器或中繼 bucket 的名稱。
- PRINCIPAL:您的帳戶,格式為
user:EMAIL(使用者帳戶) 或serviceAccount:SA_EMAIL(服務帳戶)。
後續步驟
後續步驟取決於轉移作業是否需要轉移代理:
- 如果移轉作業不需使用無代理程式 (例如在 Cloud Storage bucket 之間、從 Amazon S3 移轉至 Cloud Storage,或從 Azure Blob Storage 移轉至 Cloud Storage),則使用者存取權設定已完成。請繼續設定來源和目的地的存取權,或建立移轉作業。
- 如果移轉作業是以代理程式為基礎,例如涉及檔案系統、HDFS 或與 S3 相容的儲存空間,請前往「以代理程式為基礎的專案層級權限」。