• Сообщения
  • Управляемые агенты
  • Администрирование
Search...
⌘K
Организация
Admin APIРабочие пространства
Аутентификация
ОбзорФедерация удостоверений рабочих нагрузокСправочник по WIF
Мониторинг
API использования и затратAPI ограничений скоростиAPI аналитики Claude Code
Данные и соответствие требованиям
Резидентность данныхAPI и хранение данных
ОбзорAWS KMSGoogle Cloud KMSAzure Key Vault
Compliance API
ОбзорПолучение доступаЛента активностиЧаты, файлы и проектыОрганизации, пользователи, роли и группыПроектирование интеграцииОшибкиЧасто задаваемые вопросы
Log in
Azure Key Vault
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Amazon Bedrock
  • Google Cloud's Vertex AI

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
Администрирование/Ключи шифрования

Настройка Azure Key Vault для CMEK

Используйте Azure Key Vault для предоставления ключа шифрования вашей организации.
Configure with the /claude-api skill in Claude Code
claude "/claude-api help me configure a customer-managed encryption key with Azure Key Vault"

Это руководство описывает настройку ключа Azure Key Vault в качестве ключа шифрования, управляемого клиентом (CMEK), для вашей организации Anthropic.

Включение CMEK необратимо. Если ваш ключ Key Vault будет удалён или отключён, Anthropic не сможет восстановить данные, зашифрованные с его помощью. Ознакомьтесь с предупреждениями и ограничениями, прежде чем начать.

Предварительные требования

  • Azure Key Vault с включённой авторизацией RBAC (enableRbacAuthorization: true) и разрешённым публичным сетевым доступом. Anthropic обращается к вашему хранилищу через публичную конечную точку плоскости данных; частные конечные точки не поддерживаются.
  • Включённая защита от очистки (enablePurgeProtection: true) в хранилище. Без неё удалённый ключ может быть безвозвратно очищен в течение периода хранения при обратимом удалении, что приведёт к необратимой потере ваших данных, защищённых CMEK. Защиту от очистки нельзя отключить после включения.
  • Разрешения на создание ключей в хранилище и на назначение ролей RBAC для него.
  • Разрешения на создание субъектов-служб в вашем клиенте Entra (Application Administrator, Cloud Application Administrator или эквивалентная пользовательская роль).
  • Ключ Admin API Anthropic для вашей организации.
  • Установленный и аутентифицированный az CLI.
  • Параметры диагностики, настроенные в хранилище для маршрутизации категории журнала AuditEvent в Log Analytics, учётную запись хранения или концентратор событий. Azure Key Vault по умолчанию не создаёт журналы аудита плоскости данных (такие как KeyWrap, KeyUnwrap и KeyGet), поэтому без этого у вас не будет журнала аудита операций Anthropic с ключом.

Информация о приложении Anthropic

Чтобы Anthropic мог использовать ваш ключ шифрования, вы должны настроить идентификатор мультитенантного приложения Anthropic и отображаемое имя. Эти значения:

ПолеЗначение
Идентификатор клиента мультитенантного приложения (США)8635ae1a-3e5d-44e8-a4ed-e0f614466f87
Отображаемое имя приложенияanthropic-cmek-client-us

Используйте только этот опубликованный идентификатор клиента и отображаемое имя. Никогда не доверяйте идентификатору, предоставленному по электронной почте, в чате или через любой канал подключения.

Настройка ключа шифрования

  1. 1

    Дайте согласие на мультитенантное приложение Anthropic

    Это создаёт субъект-службу в вашем клиенте Entra для клиентского приложения CMEK от Anthropic. Приложение не запрашивает разрешений Microsoft Graph; оно существует исключительно как цель федерации для доступа к плоскости данных Key Vault.

    az ad sp create --id 8635ae1a-3e5d-44e8-a4ed-e0f614466f87

    Из выходных данных сохраните поле id. Это идентификатор объекта субъекта-службы в вашем клиенте, который вы используете при назначении роли RBAC.

    {
      "appId": "8635ae1a-3e5d-44e8-a4ed-e0f614466f87",
      "displayName": "anthropic-cmek-client-us",
      "id": "<sp-object-id>"
    }

    Если субъект-служба уже существует в вашем клиенте (после предыдущей попытки или другой интеграции), команда az ad sp create завершится с ошибкой «already exists». Вместо этого получите его идентификатор объекта:

    az ad sp show --id 8635ae1a-3e5d-44e8-a4ed-e0f614466f87 --query id -o tsv

    Для этого шага нет эквивалента в портале. Если у вас локально не установлен Azure CLI, откройте Cloud Shell из верхней панели навигации портала. После успешного выполнения команды вы можете найти идентификатор объекта субъекта-службы в разделе Microsoft Entra ID > Enterprise applications, очистив фильтр типа приложения по умолчанию и выполнив поиск по anthropic-cmek-client-us.

    Обзор корпоративного приложения Microsoft Entra для anthropic-cmek-client-us с отображением его Application ID и Object ID.
    Найдите Object ID субъекта-службы на странице обзора корпоративного приложения Entra.
  2. 2

    Создайте ключ RSA в вашем хранилище

    Azure Key Vault не поддерживает упаковку симметричных ключей, поэтому ключ должен быть RSA (3072 бита или больше) с операциями wrapKey и unwrapKey в списке разрешённых.

    az keyvault key create \
      --vault-name <your-vault-name> \
      --name <your-key-name> \
      --kty RSA --size 3072 \
      --ops wrapKey unwrapKey

    Для ключей с поддержкой HSM используйте --kty RSA-HSM (требуется хранилище с SKU Premium). Программно защищённые ключи RSA допустимы для этой интеграции.

    В портале откройте ваше хранилище Key Vault, выберите Keys, затем Generate/Import. Установите тип ключа RSA и размер 3072 или больше. Чтобы ограничить ключ только операциями упаковки и распаковки, откройте версию ключа, прокрутите до раздела Permitted operations и снимите все флажки, кроме Wrap Key и Unwrap Key.

    Страница создания ключа Azure Key Vault с выбранной опцией Generate, типом ключа RSA и размером ключа RSA 3072.
    Создайте ключ RSA размером 3072 или больше.
    Версия ключа Azure Key Vault с разрешёнными операциями, ограниченными до Wrap Key и Unwrap Key.
    Ограничьте разрешённые операции до Wrap Key и Unwrap Key.
  3. 3

    Предоставьте субъекту-службе Anthropic доступ к вашему ключу

    Назначьте роль Key Vault Crypto User субъекту-службе из первого шага, ограничив область действия отдельным ключом, а не всем хранилищем.

    VAULT_ID=$(az keyvault show --name <your-vault-name> --query id -o tsv)
    
    az role assignment create \
      --role "Key Vault Crypto User" \
      --assignee-object-id <sp-object-id> \
      --assignee-principal-type ServicePrincipal \
      --scope "${VAULT_ID}/keys/<your-key-name>"

    Встроенная роль Key Vault Crypto User предоставляет криптографические операции с ключом (шифрование, расшифровка, упаковка, распаковка, подпись, проверка), а также чтение ключа в назначенной области. Ограничение --ops wrapKey unwrapKey, которое вы установили для ключа на предыдущем шаге, дополнительно сужает набор операций, которые могут быть успешно выполнены с этим ключом, поэтому на практике Anthropic может только упаковывать и распаковывать.

    В портале откройте ключ (не хранилище), выберите его вкладку Access control (IAM), нажмите Add > Add role assignment, выберите Key Vault Crypto User и назначьте её субъекту-службе anthropic-cmek-client-us.

    Альтернатива с выделенным хранилищем: Microsoft рекомендует использовать выделенное хранилище для каждого приложения с ролями, назначенными на уровне хранилища. Если вы создаёте хранилище, содержащее только этот ключ CMEK для Anthropic, вы можете назначить роль на уровне хранилища, и эффект будет идентичным. Ограничивайте область действия отдельным ключом, если ключ находится в общем хранилище.

    Назначения ролей Access control (IAM) в Azure Key Vault, показывающие субъект-службу anthropic-cmek-client-us с назначенной ролью Key Vault Crypto User.
    Назначьте роль Key Vault Crypto User субъекту-службе Anthropic с областью действия на уровне ключа.
  4. 4

    Проверьте конфигурацию вашего хранилища

    az keyvault show --name <your-vault-name> \
      --query "{rbac:properties.enableRbacAuthorization, purge:properties.enablePurgeProtection, pub:properties.publicNetworkAccess, net:properties.networkAcls.defaultAction, ipRules:properties.networkAcls.ipRules, uri:properties.vaultUri, tenantId:properties.tenantId}"

    Убедитесь, что:

    • rbac имеет значение true.
    • purge имеет значение true. Если значение false или null, включите защиту от очистки в хранилище, прежде чем продолжить. Без неё обратимо удалённый ключ может быть безвозвратно очищен в течение периода хранения, что сделает ваши данные, защищённые CMEK, невосстановимыми.
    • pub имеет значение "Enabled". Если значение "Disabled", Anthropic не сможет получить доступ к хранилищу через его публичную конечную точку плоскости данных, и проверка завершится неудачей.
    • net имеет значение "Allow", или, если значение "Deny", то ipRules включают исходящие диапазоны Anthropic (обратитесь в Anthropic за актуальным списком).
    • uri — это URI хранилища, который вы используете при регистрации ключа.
    • tenantId — это клиент, управляющий хранилищем. Используйте это значение как tenant_id при регистрации ключа, а не клиент вашей текущей активной подписки (они могут различаться в межклиентских конфигурациях).
  5. 5

    Зарегистрируйте ключ в 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": "azure",
          "vault_uri": "https://<your-vault-name>.vault.azure.net/",
          "key_name": "<your-key-name>",
          "tenant_id": "<your-tenant-id>"
        }
      }'

    Ответ содержит идентификатор внешнего ключа:

    {
      "type": "external_key",
      "id": "ekey_<id>",
      "display_name": "<friendly-name>"
    }
  6. 6

    Проверьте ключ

    Запустите цикл шифрования и расшифровки с использованием вашего ключа. Это подтверждает, что Anthropic может аутентифицироваться в вашем клиенте и выполнять операции упаковки и распаковки.

    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 }

    Если проверка не проходит, поле error описывает проблему. Распространённые причины:

    • Задержка распространения RBAC: назначения ролей могут вступать в силу через несколько минут. Подождите и повторите попытку.
    • Сетевые ACL блокируют Anthropic: проверьте публичный сетевой доступ и ipRules, как описано в шаге проверки.
    • Политики условного доступа для удостоверений рабочих нагрузок: если в вашем клиенте есть политики условного доступа, нацеленные на субъекты-службы, исключите субъект-службу Anthropic или добавьте исходящие диапазоны Anthropic в именованные расположения политики.
  7. 7

    Прикрепите ключ к рабочей области

    После проверки ключа прикрепите его к рабочей области, чтобы включить CMEK для данных этой рабочей области.

    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>"
      }'

Terraform

Для развёртываний по принципу «инфраструктура как код» те же шаги соответствуют провайдерам azurerm и azuread.

Was this page helpful?

  • Предварительные требования
  • Информация о приложении Anthropic
  • Настройка ключа шифрования
  • Terraform