Настройка Google Cloud KMS для CMEK
Используйте Google Cloud KMS для предоставления ключа шифрования для вашей организации.
Claude Code
Позвольте Claude Code настроить эту функцию за вас
/claude-api помоги мне настроить ключ шифрования, управляемый клиентом, с помощью Google Cloud KMSЭто руководство описывает настройку ключа Google Cloud KMS в качестве ключа шифрования, управляемого клиентом (customer-managed encryption key, CMEK) для вашей организации Anthropic.
Предварительные требования
- Проект Google Cloud с включённым биллингом.
- Включённый Cloud KMS API (
cloudkms.googleapis.com). - Разрешения на создание связок ключей (key rings) и ключей KMS, а также на установку политики IAM для них (
roles/cloudkms.adminили эквивалент). - Ключ Anthropic Admin API для вашей организации.
- Установленный и аутентифицированный
gcloudCLI. - Включённые для проекта журналы аудита доступа к данным (Data Access audit logs) Cloud KMS (IAM & Admin > Audit Logs > Cloud Key Management Service, с
DATA_READиDATA_WRITE). По умолчанию они отключены; без них операции шифрования и расшифровки Anthropic не создают записей в Cloud Logging.
Адрес электронной почты сервисного аккаунта Anthropic
Чтобы Anthropic использовала ваш ключ шифрования, вы должны предоставить сервисному аккаунту Anthropic ключ, который он может использовать для шифрования данных. Адрес электронной почты сервисного аккаунта для Anthropic CMEK:
anthropic-cmek-client-us@gcp-anthropic-cmek-clients.iam.gserviceaccount.comНастройка ключа шифрования
Создайте или выберите связку ключей
Пропустите этот шаг, если у вас уже есть связка ключей для повторного использования. Связки ключей являются региональными. Выберите однорегиональное расположение в США, такое как
us-east5, которое соответствует географии Anthropic, которую вы настраиваете. Мультирегиональные расположения, такие какusиglobal, не поддерживаются.gcloud kms keyrings create <your-keyring-name> \ --project=<your-project-id> \ --location=<region>Создайте криптографический ключ
Создайте симметричный ключ с назначением
ENCRYPT_DECRYPT. Anthropic настоятельно рекомендует защиту HSM: ключи Cloud KMS HSM валидированы по FIPS 140-2 Level 3, а разница в стоимости по сравнению с программными ключами невелика.Опция
--labelsдобавляет метку организации,anthropic-org-<ORGANIZATION_UUID>со значениемtrue, где<ORGANIZATION_UUID>— это идентификатор вашей организации Anthropic в нижнем регистре. Метка требуется для того, чтобы Anthropic могла валидировать ключ.gcloud kms keys create <KEY_NAME> \ --project=<PROJECT_ID> \ --location=<REGION> \ --keyring=<KEYRING_NAME> \ --purpose=encryption \ --protection-level=hsm \ --labels=anthropic-org-<ORGANIZATION_UUID>=trueДля программной защиты вместо этого опустите
--protection-level=hsm. Ничего больше в этом руководстве не меняется.Вы также можете создать ключ из Google Cloud Console. Откройте связку ключей, нажмите Create key, выберите Generated key, установите назначение и алгоритм на симметричное шифрование и расшифровку, и выберите HSM в разделе уровня защиты.

Создайте защищённый HSM симметричный ключ шифрования/расшифровки с меткой организации. Чтобы использовать один ключ для нескольких организаций Anthropic, добавьте по одной такой метке для каждой организации. Ключ может содержать не более 64 меток, включая ваши собственные.
Предоставьте сервисному аккаунту 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.cryptoKeyEncrypterDecrypterViewer, для чтения метаданных (
cryptoKeys.get), которое 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.viewerИз Console выберите ключ, откройте панель Permissions, нажмите Grant access и добавьте сервисный аккаунт с обеими ролями Cloud KMS CryptoKey Encrypter/Decrypter и Cloud KMS Viewer. Убедитесь, что вы находитесь на странице разрешений ключа, а не связки ключей или проекта, чтобы предоставление было ограничено только этим ключом.

Предоставьте сервисному аккаунту 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
Способ регистрации ключа зависит от того, какой продукт вы используете.
Вы можете настроить ключ в Claude Console или через Admin API, с одинаковым результатом.
Зарегистрируйте ключ в Anthropic
В Claude Console перейдите на страницу Data retention (
platform.claude.com/settings/privacy). Если вы не видите раздел Encryption keys, выберите Organization в раскрывающемся меню в верхней части страницы. В разделе Encryption keys нажмите Add key. Введите отображаемое имя, выберите Google Cloud KMS и нажмите Continue. Вставьте полное имя ресурса ключа в поле Key resource name и нажмите Add.Шаг сведений о ключе показывает метку организации. Добавьте её к ключу, как описано в шаге создания, прежде чем нажать Add.
Валидируйте ключ
В списке Encryption keys нажмите Verify рядом с ключом. При успешной проверке появится статус Connected. Если проверка не пройдена, сообщение укажет причину.
Прикрепите ключ к рабочему пространству
В Claude Console перейдите на страницу Data retention (
platform.claude.com/settings/privacy) и выберите рабочее пространство в раскрывающемся меню в верхней части страницы. В разделе Encryption key выберите ключ, нажмите Save и подтвердите действие. Прикрепление ключа нельзя отменить. Для рабочего пространства, которое уже получает запросы, ключ может вступить в силу в течение суток.
Зарегистрируйте ключ в Anthropic
Создайте конфигурацию внешнего ключа через Admin API, используя имя ресурса из шага «Запишите полное имя ресурса ключа» в разделе «Настройка ключа шифрования».
Pythonclient = anthropic.Anthropic() external_key = client.organization.external_keys.create( 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>", }, ) print(f"id: {external_key.id}") print(f"display_name: {external_key.display_name}")Ответ содержит идентификатор внешнего ключа:
{ "type": "external_key", "id": "ekey_<id>", "display_name": "<friendly-name>" }Валидируйте ключ
Запустите цикл шифрования и расшифровки для вашего ключа.
Pythonclient = anthropic.Anthropic() validation = client.organization.external_keys.validate("ekey_<id>") print(f"status: {validation.status}") print(f"error: {validation.error}")Успешный ответ выглядит так:
{ "type": "external_key_validation", "status": "success", "error": null }Если валидация не удаётся, распространённые причины:
- VPC Service Controls: если периметр сервиса защищает Cloud KMS в вашем проекте, добавьте Anthropic в уровень доступа на периметре (или исключите проект ключа), чтобы Anthropic могла получить доступ к ключу.
- Ограничение совместного доступа по домену: политика организации
constraints/iam.allowedPolicyMemberDomainsможет удалить привязку сервисного аккаунта Anthropic (см. предыдущее примечание). Подтвердите наличие привязки с помощьюgcloud kms keys get-iam-policy <your-key-name> --project=<your-project-id> --location=<region> --keyring=<your-keyring-name>. - Отключённая или уничтоженная версия ключа: подтвердите, что основная версия ключа включена, а не отключена, не запланирована к уничтожению и не уничтожена.
Прикрепите ключ к рабочему пространству
После валидации ключа прикрепите его к новому рабочему пространству, прежде чем отправлять какие-либо запросы в это рабочее пространство. Для рабочего пространства, которое уже получает запросы, ключ может вступить в силу в течение дня.
Pythonclient = anthropic.Anthropic() workspace = client.organization.workspaces.update( "<workspace-id>", external_key_id="ekey_<id>" ) print(f"id: {workspace.id}") print(f"external_key_id: {workspace.external_key_id}")
В claude.ai > Organization settings > Data and privacy откройте Encryption keys, затем нажмите Add key. Выберите Google Cloud, вставьте полное имя ресурса ключа из предыдущего шага и нажмите Continue. Anthropic валидирует ключ с помощью цикла шифрования и расшифровки. Как только он отобразится как проверенный, ваша организация защищена CMEK с этого момента.
В Claude Enterprise CMEK применяется ко всей организации, поэтому отдельного шага прикрепления к рабочему пространству нет, и организация может иметь только один ключ.
Terraform
Для развёртываний по модели «инфраструктура как код» те же шаги сопоставляются с провайдером google и ресурсами google_kms_key_ring, google_kms_crypto_key и google_kms_crypto_key_iam_member.
Was this page helpful?