claude "/claude-api help me configure a customer-managed encryption key with Google Cloud KMS"本指南將逐步說明如何設定 Google Cloud KMS 金鑰,作為您 Anthropic 組織的 customer-managed encryption key(客戶管理的加密金鑰,CMEK)。
啟用 CMEK 是永久性的。如果您的 KMS 金鑰被刪除或停用,Anthropic 將無法復原使用該金鑰加密的資料。開始之前,請先檢閱警告與限制。
cloudkms.googleapis.com)。roles/cloudkms.admin 或同等權限)。gcloud CLI。DATA_READ 和 DATA_WRITE)。這些預設為關閉;若未啟用,Anthropic 的加密和解密操作將不會在 Cloud Logging 中產生任何記錄。為了讓 Anthropic 使用您的加密金鑰,您必須授予 Anthropic 的服務帳戶一個可用於加密資料的金鑰。Anthropic CMEK 的服務帳戶電子郵件為:
anthropic-cmek-client-us@gcp-anthropic-cmek-clients.iam.gserviceaccount.com請僅使用此公開發布的服務帳戶電子郵件。切勿信任透過電子郵件、聊天或任何導入管道提供的識別碼。
**網域限制共用:**如果您的專案隸屬於強制執行 constraints/iam.allowedPolicyMemberDomains 的 Google Cloud 組織,下方的 IAM 繫結將會被拒絕,因為 Anthropic 服務帳戶不屬於您的組織。您需要針對該限制設定專案層級的例外,或將 Anthropic 的 Cloud Identity 客戶 ID(格式為 C0xxxxxxxx)新增至允許清單。如有需要,請聯絡 Anthropic 取得客戶 ID。
建立或選擇金鑰環
如果您已有可重複使用的金鑰環,請略過此步驟。金鑰環具有區域性。請選擇與您正在設定的 Anthropic 地理位置相符的單一區域美國位置,例如 us-east5。不支援 us 和 global 等多區域位置。
gcloud kms keyrings create <your-keyring-name> \
--project=<your-project-id> \
--location=<region>建立加密金鑰
建立一個用途為 ENCRYPT_DECRYPT 的對稱金鑰。強烈建議使用 HSM 保護:Cloud KMS HSM 金鑰已通過 FIPS 140-2 Level 3 驗證,且與軟體金鑰相比的成本差異很小。
gcloud kms keys create <your-key-name> \
--project=<your-project-id> \
--location=<region> \
--keyring=<your-keyring-name> \
--purpose=encryption \
--protection-level=hsm若要改用軟體保護,請省略 --protection-level=hsm。本指南中的其他內容均不變。
您也可以從 Google Cloud Console 建立金鑰。開啟金鑰環,點選 Create key(建立金鑰),選取 Generated key(產生的金鑰),將用途和演算法設定為對稱加密和解密,並在保護層級下選擇 HSM。

授予 Anthropic 服務帳戶存取金鑰的權限
需要兩個金鑰層級的 IAM 繫結。兩者的範圍都限定於單一加密金鑰,而非整個專案或整個金鑰環。
加密和解密,Anthropic 用於加密和解密保護您工作區資料的資料金鑰(信封加密):
gcloud kms keys add-iam-policy-binding <your-key-name> \
--project=<your-project-id> \
--location=<region> \
--keyring=<your-keyring-name> \
--member="serviceAccount:anthropic-cmek-client-us@gcp-anthropic-cmek-clients.iam.gserviceaccount.com" \
--role=roles/cloudkms.cryptoKeyEncrypterDecrypter檢視者,用於 Anthropic 在啟動時執行的中繼資料讀取(),以驗證金鑰的用途和演算法:
記下完整的金鑰資源名稱
您在向 Anthropic 註冊金鑰時需要傳遞此名稱。格式為:
projects/<your-project-id>/locations/<region>/keyRings/<your-keyring-name>/cryptoKeys/<your-key-name>使用以下指令取得:
gcloud kms keys describe <your-key-name> \
--project=<your-project-id> \
--location=<region> \
--keyring=<your-keyring-name> \
--format="value(name)"從 Console 中,開啟金鑰的詳細資料頁面,然後點選 Copy resource name(複製資源名稱)。

向 Anthropic 註冊金鑰
使用上一步驟中的資源名稱,透過 Admin API 建立外部金鑰設定。
curl -sS https://api.anthropic.com/v1/organizations/external_keys \
-H "x-api-key: <anthropic-admin-api-key>" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"display_name": "<friendly-name>",
"geo": "us",
"provider_config": {
"type": "gcp",
"key_name": "projects/<your-project-id>/locations/<region>/keyRings/<your-keyring-name>/cryptoKeys/<your-key-name>"
}
}'回應中包含外部金鑰 ID:
{
"type": "external_key",
"id": "ekey_<id>",
"display_name": "<friendly-name>"
}驗證金鑰
對您的金鑰觸發一次加密和解密的往返測試。
curl -sS -X POST https://api.anthropic.com/v1/organizations/external_keys/ekey_<id>/validate \
-H "x-api-key: <anthropic-admin-api-key>" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" -d '{}'成功的回應如下所示:
{ "type": "external_key_validation", "status": "success", "error": null }將金鑰附加至工作區
curl -sS -X POST https://api.anthropic.com/v1/organizations/workspaces/<workspace-id> \
-H "x-api-key: <anthropic-admin-api-key>" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"external_key_id": "ekey_<id>"
}'對於基礎架構即程式碼(infrastructure-as-code)的部署,相同的步驟對應至 google 提供者的 google_kms_key_ring、google_kms_crypto_key 和 google_kms_crypto_key_iam_member 資源。
Was this page helpful?
cryptoKeys.getgcloud kms keys add-iam-policy-binding <your-key-name> \
--project=<your-project-id> \
--location=<region> \
--keyring=<your-keyring-name> \
--member="serviceAccount:anthropic-cmek-client-us@gcp-anthropic-cmek-clients.iam.gserviceaccount.com" \
--role=roles/cloudkms.viewer從 Console 中,選取金鑰,開啟 Permissions(權限)面板,點選 Grant access(授予存取權),並為服務帳戶新增 Cloud KMS CryptoKey Encrypter/Decrypter 和 Cloud KMS Viewer 兩個角色。請確認您位於金鑰的權限頁面,而非金鑰環或專案的權限頁面,以確保授權範圍僅限於此金鑰。

如果驗證失敗,常見原因包括:
constraints/iam.allowedPolicyMemberDomains 組織政策可能會移除 Anthropic 服務帳戶的繫結(請參閱上方的注意事項)。請使用 gcloud kms keys get-iam-policy <your-key-name> --project=<your-project-id> --location=<region> --keyring=<your-keyring-name> 確認繫結是否存在。