Поделиться через


Сведения о секретах Azure Key Vault

Key Vault обеспечивает безопасное хранилище для универсальных секретов, таких как пароли и строки подключения к базе данных.

С точки зрения разработчика, Key Vault API принимают и возвращают значения секретов в виде строк. Внутри Key Vault хранит секреты и управляет секретами в виде последовательностей октетов (8-разрядных байтов) с максимальным размером 25 КБ каждый. Служба Key Vault не предоставляет семантику секретов. Он просто принимает данные, шифрует его, сохраняет его и возвращает секретный идентификатор (id). Идентификатор можно использовать для получения секрета в дальнейшем.

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

Key Vault также поддерживает поле contentType для секретов. Клиенты могут указать тип содержимого секрета, чтобы облегчить интерпретацию данных секрета при их извлечении. Максимальная длина этого поля составляет 255 символов. Предлагаемое использование является подсказкой для интерпретации секретных данных. Например, реализация может хранить пароли и сертификаты в качестве секретов, а затем использовать это поле для дифференцировки. Предопределенные значения отсутствуют.

Шифрование

Key Vault хранит все секреты в Key Vault в зашифрованном виде. Key Vault шифрует неактивные секреты с помощью иерархии ключей шифрования, со всеми ключами в иерархии, защищенными модулями, проверенными FIPS. Это шифрование прозрачно и не требует от вас никаких действий. Служба Azure Key Vault шифрует секреты при их добавлении и автоматически расшифровывает их при их чтении.

Конечный ключ шифрования иерархии ключей уникален для каждого хранилища ключей. Корневой ключ шифрования иерархии ключей является уникальным для мира безопасности. Сведения о уровнях проверки FIPS для каждого уровня Key Vault и управляемого модуля HSM см. в разделе About key: Compliance.

Атрибуты секретов

Помимо секретных данных можно указать следующие атрибуты:

  • exp: IntDate, необязательный, по умолчанию — навсегда. Атрибут эксп (время окончания срока действия) задает время окончания срока действия или после чего не следует извлекать секретные данные, за исключением конкретных ситуаций. Это поле предназначено только для информационных целей, так как оно сообщает пользователям службы хранилища ключей, что определенный секрет не может использоваться. Нужно указать число, содержащее значение IntDate.
  • nbf: IntDate, необязательно, по умолчанию теперь. Атрибут nbf (не раньше) задает время, до которого не следует извлекать секретные данные, за исключением конкретных ситуаций. Это поле предназначено только для информационных целей. Нужно указать число, содержащее значение IntDate.
  • enabled. Необязательный атрибут с логическим значением, по умолчанию — true. Этот атрибут указывает, можно ли получить секретные данные. Используйте включенный атрибут с nbf и exp. Если операция возникает между nbf и exp, операция допускается только в том случае, если включено значение true. Операции вне окна nbf и exp автоматически запрещаются, за исключением конкретных ситуаций.

Следующие атрибуты, доступные только для чтения, включаются в любой ответ, включающий секретные атрибуты:

  • created. Необязательный атрибут со значением в формате IntDate. Атрибут created указывает, когда была создана эта версия секрета. Это значение равно NULL для секретов, созданных перед добавлением данного атрибута. Нужно указать число, содержащее значение IntDate.
  • updated. Необязательный атрибут со значением в формате IntDate. Атрибут updated указывает, когда была обновлена эта версия секрета. Это значение равно NULL для секретов, которые в последний раз обновлялись перед добавлением данного атрибута. Нужно указать число, содержащее значение IntDate.

Сведения об общих атрибутах для каждого типа объекта хранилища ключей см. в разделе Azure Key Vault ключи, секреты и сертификаты.

Операции, зависящие от даты и времени

Операция получения секрета работает с еще не действительными и с истекшим сроком действия секретами за пределами временного окна nbf / exp. Вызов операции получения секрета для еще не действительного секрета можно использовать в целях тестирования. Получение (getting) секрета с истекшим сроком действия можно использовать для операций восстановления.

Контроль доступа к секретам

Управление доступом к секретам, хранящимся в Хранилище ключей, предоставляется на уровне Хранилища ключей, содержащего эти секреты. Политика управления доступом для секретов отличается от политики управления доступом для ключей в одном хранилище ключей. Пользователи могут создавать один или несколько хранилищ для хранения секретов и должны поддерживать сегментацию и управление секретами, соответствующими сценариям.

Используйте следующие разрешения для каждого субъекта в записи управления доступом к секретам в хранилище. Эти разрешения внимательно отражают операции, разрешенные для секретного объекта:

  • Разрешения для операций управления секретами

    • get: чтение секрета
    • list: перечисление секретов или версий секрета, хранящегося в Key Vault
    • set: Создание секрета
    • delete: удаление секрета
    • восстановление: восстановление удаленного секрета
    • резервное копирование: резервное копирование секрета в хранилище ключей
    • восстановить: Восстановить сохраненный секрет в хранилище ключей
  • Разрешения для привилегированных операций

    • Очистка: очистка (окончательное удаление) удаленного секрета

Дополнительные сведения о работе с секретами см. в статье Secret operations in the Key Vault REST API reference. Сведения о создании разрешений см. в разделе "Хранилища" — создание и обновление и хранилища — обновление политики доступа.

Инструкции по управлению доступом в Key Vault:

Секретные теги

Можно указать дополнительные метаданные, относящиеся к приложению, в виде тегов. Key Vault поддерживает до 15 тегов, каждый из которых может иметь 512-символьное имя и 512-символьное значение.

Замечание

Если вызывающий объект имеет разрешение на перечисление или чтение, он может считывать теги.

Сценарии использования

Когда следует использовать Примеры
Безопасное хранение, управление жизненным циклом и мониторинг учетных данных для обмена данными между службами, такими как пароли, ключи доступа, секреты клиента субъекта-службы. - Использовать Azure Key Vault с виртуальной машиной
- Использовать Azure Key Vault с веб-приложением Azure

Дальнейшие шаги