本文將逐步說明如何設定 Google Cloud 權限和 Cloud Storage,包括:
- 準備 Cloud Storage 值區。
- 準備 Cloud Key Management Service 金鑰,保護資料安全。
- 向 Transfer Appliance 團隊提供 Cloud Storage bucket 設定資料。
事前準備
請確認您收到一封主旨為「Google Transfer Appliance Permissions」(Google Transfer Appliance 權限) 的電子郵件,寄件者是 Transfer Appliance 團隊。這封電子郵件包含:
移轉作業所需的服務帳戶名稱。
設定設備時所需的會期 ID。
設定帳戶後填寫的表單。
準備 Cloud Storage 值區的權限
我們會使用兩個服務帳戶轉移您的資料。服務帳戶是應用程式 (而非使用者) 用來執行工作的特殊帳戶。在這種情況下,服務帳戶可讓 Transfer Appliance 代表您使用 Cloud Storage 資源,在 Cloud Storage 與裝置之間移轉資料。您會授予這些帳戶移轉資料所需的角色。
如要準備 Cloud Storage bucket,請按照下列步驟操作:
在主旨為「Google Transfer Appliance Permissions」(Google Transfer Appliance 權限) 的電子郵件中,Transfer Appliance 團隊會提供下列服務帳戶:
與這項特定轉移作業相關聯的工作階段服務帳戶。 如下列範例所示:
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
在本範例中,
SESSION_ID
是這項特定轉移作業的工作階段 ID。與 Transfer Service for On Premises Data 服務相關聯的服務代理程式,用於在 Cloud Storage 與設備之間傳輸資料。類似以下範例:
project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com
在本例中,
TENANT_IDENTIFIER
是為這個特定專案產生的號碼。
請記下服務帳戶,以供後續步驟使用。
服務帳戶可讓 Transfer Appliance 代表您操作Google Cloud 資源,也就是在 Cloud Storage 與裝置之間傳輸資料。您會授予這些帳戶必要角色,以便在 Cloud Storage 和裝置之間轉移資料。
Cloud Storage 值區會與 Google Cloud 專案繫結。選取的值區必須與訂購裝置時使用的專案相同。
如要授予 Transfer Appliance 服務帳戶使用 Cloud Storage bucket 的權限,請按照下列步驟操作:
Google Cloud 控制台
- 在 Google Cloud 控制台,前往「Cloud Storage bucket」頁面。
針對要將角色授予主體的值區,按一下相應的「Bucket overflow」(值區溢位) 選單 (
)。
選擇 [Edit bucket permissions] (編輯 Bucket 權限)。
按一下「+ Add principals」(新增主體) 按鈕。
在「New principals」(新增主體) 欄位中輸入下列身分:
工作階段服務帳戶。如下列範例所示:
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
在本範例中,
SESSION_ID
是這項轉移作業的會期 ID。Transfer Service for On Premises Data 服務代理。類似以下範例:
project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com
在本例中,
TENANT_IDENTIFIER
是這個特定專案產生的號碼。
從「Select a role」(請選取角色) 下拉式選單中,選取「Storage Admin」(Storage 管理員) 角色。
您選取的角色會顯示在面板中,系統還會針對這些角色所授予的權限提供簡短說明。
按一下 [儲存]。
指令列
使用
gcloud storage buckets add-iam-policy-binding
指令:gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \ --member=serviceAccount:ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com \ --role=roles/storage.admin
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \ --member=serviceAccount:project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com \ --role=roles/storage.admin
在這個例子中:
BUCKET_NAME
:您要建立的 bucket 名稱。SESSION_ID
:這項特定轉移作業的工作階段 ID。TENANT_IDENTIFIER
:系統為這個特定專案產生的號碼。
- 在 Google Cloud 控制台,前往「Cloud Storage bucket」頁面。
準備 Cloud KMS 金鑰
Transfer Appliance 會加密資料,確保裝置上的資料安全無虞。Cloud Key Management Service (Cloud KMS) 公開金鑰可用於加密 Transfer Appliance 上的資料,私密金鑰則可用於解密資料。
我們會使用「準備 Cloud Storage 值區的權限」中的工作階段服務帳戶,將 Cloud Storage 值區中的資料上傳至裝置。
您可以透過下列選項管理加密金鑰:
- 自行建立及管理加密金鑰。請按照下列指示,建立及管理用於轉移作業的加密金鑰。準備 Cloud KMS 非對稱解密金鑰,並將工作階段服務帳戶新增至金鑰。
如要準備 Cloud KMS 金鑰,請按照下列步驟操作:
如果您沒有 Cloud Key Management Service 金鑰環,請按照下列步驟建立:
Google Cloud 控制台
前往Google Cloud console 的「Cryptographic Keys」(加密編譯金鑰) 頁面。
按一下 [Create key ring] (建立金鑰環)。
在「Key ring name」(金鑰環名稱) 欄位中,輸入金鑰環的名稱。
從「Key ring location」(金鑰環位置) 下拉式選單中,選取類似
"us-east1"
的位置。點選「建立」。
指令列
gcloud kms keyrings create KEY_RING --location=LOCATION --project=PROJECT_ID
在這個例子中:
LOCATION
:金鑰環的 Cloud Key Management Service 位置。例如:global
。KEY_RING
:金鑰環的名稱。PROJECT_ID
:儲存空間值區所屬的 Google Cloud 專案 ID。
請按照下列步驟建立非對稱式解密金鑰:
Google Cloud 控制台
前往Google Cloud console 的「Cryptographic Keys」(加密編譯金鑰) 頁面。
按一下要建立金鑰的金鑰環名稱。
按一下 [Create key] (建立金鑰)。
在「您要建立哪種類型的金鑰?」部分,選擇「產生的金鑰」。
在「Key name」(金鑰名稱) 欄位中,輸入金鑰的名稱。
按一下「Protection level」(防護等級) 下拉式選單,然後選取「Software」(軟體)。
按一下「Purpose」(用途) 下拉式清單,並選取「Asymmetric decrypt」(非對稱式解密)。
按一下「演算法」下拉式選單,然後選取「4096 位元 RSA - OAEP 填充法 - SHA256 摘要」
點選「建立」。
指令列
執行下列指令來建立非對稱式解密金鑰:
gcloud kms keys create KEY --keyring=KEY_RING \ --location=LOCATION --purpose=asymmetric-encryption \ --default-algorithm=rsa-decrypt-oaep-4096-sha256 \ --project=PROJECT_ID
在這個例子中:
KEY
:Cloud Key Management Service 金鑰的名稱。 例如:ta-key
。KEY_RING
:金鑰環的名稱。LOCATION
:金鑰環的 Cloud Key Management Service 位置。例如:global
。PROJECT_ID
:儲存空間值區所屬的 Google Cloud 專案 ID。
執行下列步驟,將工作階段服務帳戶新增為非對稱金鑰的主體:
Google Cloud 控制台
前往 Google Cloud 控制台的「Cryptographic Keys」(加密編譯金鑰) 頁面。
按一下包含非對稱金鑰的金鑰環。
選取非對稱式金鑰的核取方塊。
在「資訊面板」中,按一下「新增主體」。
畫面上會顯示「Add principals」(新增主體)。
在「新增主體」欄位中,輸入 Transfer Appliance 團隊提供的工作階段服務帳戶。如下列範例所示:
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
在本範例中,
SESSION_ID
是這項轉移作業的會期 ID。在「Select a role」(選取角色) 欄位中,新增「Cloud KMS CryptoKey Public Key Viewer」(Cloud KMS 加密編譯金鑰公開金鑰檢視者) 角色。
按一下 [儲存]。
指令列
執行下列指令,將
roles/cloudkms.publicKeyViewer
角色授予工作階段服務帳戶:gcloud kms keys add-iam-policy-binding KEY \ --keyring=KEY_RING --location=LOCATION \ --member=serviceAccount:ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com \ --role=roles/cloudkms.publicKeyViewer
在這個例子中:
KEY
:Cloud Key Management Service 金鑰的名稱。 例如:ta-key
。KEY_RING
:金鑰環的名稱。LOCATION
:金鑰環的 Cloud Key Management Service 位置。例如:global
。SESSION_ID
:這項特定轉移作業的工作階段 ID。
請按照下列步驟取得非對稱式金鑰的路徑:
Google Cloud 控制台
前往 Google Cloud 控制台的「Cryptographic Keys」(加密編譯金鑰) 頁面。
按一下包含非對稱解密金鑰的金鑰環。
按一下非對稱解密金鑰的名稱。
選取所需金鑰版本,然後按一下「更多」圖示 more_vert。
按一下「複製資源名稱」。
金鑰格式範例如下:
projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY/cryptoKeyVersions/VERSION_NUMBER
在這個例子中:
PROJECT_ID
:儲存空間值區所屬的 Google Cloud 專案 ID。LOCATION
:金鑰環的 Cloud Key Management Service 位置。KEY_RING
:金鑰環的名稱。KEY
:Cloud Key Management Service 金鑰的名稱。VERSION_NUMBER
:金鑰的版本號碼。
Transfer Appliance 團隊需要完整的金鑰路徑 (包括版本號碼),才能將正確的金鑰套用至您的資料。
指令列
執行下列指令,列出非對稱金鑰的完整路徑,包括版本號碼:
gcloud kms keys versions list --keyring=KEY_RING \ --key=KEY --location=LOCATION \ --project=PROJECT_ID
在這個例子中:
KEY_RING
:金鑰環的名稱。KEY
:非對稱金鑰的名稱。LOCATION
:金鑰環的 Google Cloud 位置。PROJECT_ID
:儲存空間值區所屬的 Google Cloud 專案 ID。
以下範例回應類似於傳回的輸出內容:
NAME STATE projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY/cryptoKeyVersions/VERSION_NUMBER ENABLED
在這個例子中:
PROJECT_ID
:儲存空間值區所屬的 Google Cloud 專案 ID。LOCATION
:金鑰環的 Cloud Key Management Service 位置。KEY_RING
:金鑰環的名稱。KEY
:Cloud Key Management Service 金鑰的名稱。VERSION_NUMBER
:金鑰的版本號碼。
Transfer Appliance 團隊需要
NAME
下方以/cryptoKeyVersions/VERSION_NUMBER
結尾的字串,其中VERSION_NUMBER
是金鑰的版本號碼。
向 Transfer Appliance 團隊提供 bucket 設定資料
我們會傳送主旨為「Google Transfer Appliance Permissions」的電子郵件,以收集 Cloud Storage bucket 的相關資訊。我們會使用您提供的資訊,設定 Cloud Storage 與 Transfer Appliance 之間的資料移轉作業。
在該電子郵件中連結的表單中,輸入下列資訊:
- Google Cloud 專案 ID。
- 選取「加密」的選項:
- 客戶自行管理的加密金鑰:從「選取客戶自行管理的加密金鑰」下拉式選單中選取加密金鑰。
- 用於這項轉移作業的 Google Cloud Cloud Storage bucket 名稱。
後續步驟
設定 IP 網路埠,讓 Transfer Appliance 在您的網路上運作。