Управление жизненным циклом сертификатов в Azure

Служба автоматизации Azure
Сетка событий Azure
Azure Key Vault

В кибербезопасности важно настроить автоматическое продление сертификатов для обеспечения безопасной и надежной среды. Сбой своевременного обновления или продления сертификатов предоставляет системам уязвимости. К потенциально уязвимым областям относятся:

  • Истек срок действия TLS/SSL-сертификатов.
  • Сети, которые подвергаются потенциальным нарушениям.
  • Конфиденциальные данные, незащищенные.
  • Службы, которые идут вниз для бизнес-процессов.
  • Потеря репутации бренда, которая скомпрометирует целостность и конфиденциальность цифровых транзакций.

Azure Key Vault поддерживает автоматическое продление сертификатов, выданное интегрированным центром сертификации (ЦС), например DigiCert или GlobalSign. Для неинтегрированного ЦС требуется ручной подход.

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

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

Хотя автоматическое продление сертификатов является начальным, более широкая цель заключается в повышении безопасности во всех областях процесса. Это включает в себя реализацию принципа наименьших привилегий (PoLP) или аналогичных элементов управления доступом с помощью Key Vault. Он также подчеркивает важность надежных методов ведения журнала и мониторинга для Key Vault. В этой статье описывается важность использования Key Vault для укрепления всего жизненного цикла управления сертификатами и демонстрируется, что преимущества безопасности не ограничиваются хранением сертификатов.

Для непрерывного обновления сертификатов можно использовать Key Vault и его процесс автоматического продления. Автоматическое продление играет важную роль в процессе развертывания и помогает службам Azure, интегрирующимся с Key Vault, воспользоваться актуальными сертификатами. В этой статье содержатся сведения о том, как непрерывное продление и доступность способствуют общей эффективности развертывания и надежности служб Azure.

Архитектура

Ниже приведен краткий обзор базовой архитектуры, которая управляет этим решением.

Схема архитектуры управления жизненным циклом сертификатов.

Скачайте файл Visio для этой архитектуры.

Среда Azure состоит из следующих ресурсов платформы как службы (PaaS). Хранилище ключей, выделенное для хранения сертификатов, выданных только тем же неинтегрированных ЦС, системного раздела Сетка событий Azure, очереди учетной записи хранения и учетной записи служба автоматизации Azure, которая предоставляет веб-перехватчик, предназначенный для сетки событий.

Для мониторинга процесса и состояния просроченных сертификатов и истечения срока действия Log Analytics хранит данные, а рабочая область представляет ее в виде табличных и графических панелей мониторинга.

В этом сценарии предполагается, что существующая инфраструктура открытых ключей (PKI) уже существует и состоит из ЦС Microsoft Enterprise, присоединенного к домену в идентификаторе Microsoft Entra ID. PKI и домен Active Directory могут находиться в Azure или локальной среде, а также серверы, которые должны быть настроены для продления сертификата.

Виртуальные машины (виртуальные машины) с сертификатами для мониторинга продления не нужно присоединяться к Active Directory или идентификатору Microsoft Entra. Единственное требование заключается в том, чтобы ЦС и гибридная рабочая роль, расположенные на другой виртуальной машине, отличной от ЦС, присоединялись к Active Directory.

В следующих разделах приведены сведения о процессе автоматического продления.

Рабочий процесс

На этом рисунке показан автоматический рабочий процесс для продления сертификатов в экосистеме Azure.

Схема автоматического рабочего процесса для продления сертификатов в экосистеме Azure.

  1. Конфигурация Key Vault: начальный этап процесса продления подразумевает хранение объекта сертификата в указанном разделе сертификатов хранилища ключей.

    Хотя и не обязательно, можно настроить настраиваемые Уведомления по электронной почте, пометив сертификат по адресу электронной почты получателя. Добавление тегов в сертификат гарантирует своевременное уведомление о завершении процесса продления. Если требуется несколько получателей, разделите адреса электронной почты запятой или точкой с запятой. Имя тега для этой цели — Получатель, а его значение — один или несколько адресов электронной почты назначенных администраторов.

    При использовании тегов вместо встроенных уведомлений о сертификатах можно применять уведомления к конкретному сертификату с назначенным получателем. Встроенные уведомления о сертификатах применяются неизбирательно ко всем сертификатам в хранилище ключей и используют одного получателя для всех.

    Встроенные уведомления можно интегрировать с решением, но использовать другой подход. В то время как встроенные уведомления могут уведомлять только о предстоящем истечении срока действия сертификата, теги могут отправлять уведомления, когда сертификат продлевает внутренний ЦС и когда он доступен в Key Vault.

  2. Конфигурация расширения Key Vault: необходимо подготовить серверы, которые должны использовать сертификаты с расширением Key Vault, универсальным инструментом, совместимым с системами Windows и Linux . Поддерживаются серверы инфраструктуры Azure как услуга (IaaS) и локальные или другие облачные серверы, которые интегрируются через Azure Arc . Настройте расширение Key Vault для периодического опроса Key Vault для всех обновленных сертификатов. Интервал опроса настраивается и гибкий, поэтому он может соответствовать конкретным операционным требованиям.

    Примечание.

    Расширение Key Vault недоступно в Linux RedHat и CentOS. Чтобы расширить решение для этих систем, запланируйте скрипт script_for_not_supported_ARC_on_Linux_distro, который периодически проверяет Key Vault на наличие обновлений сертификатов и применяет их к серверу. Сценарий может выполняться как на собственных виртуальных машинах Azure (IaaS), так и на локальных серверах, интегрированных с Azure Arc.

  3. Интеграция Сетки событий: как сертификат приближается к истечению срока действия, две подписки сетки событий перехватывают это важное событие времени существования из хранилища ключей.

  4. Триггеры сетки событий: одна подписка сетки событий отправляет сведения о продлении сертификата в очередь учетной записи хранения. Другая подписка активирует запуск модуля Runbook с помощью настроенного веб-перехватчика в учетной записи службы автоматизации. Если модуль Runbook не сможет обновить сертификат или если ЦС недоступен, запланированный процесс повторяет продление модуля Runbook с этого момента до очистки очереди. Этот процесс обеспечивает надежность решения.

    Чтобы повысить устойчивость решения, настройте механизм расположения недоставленных букв. Он управляет потенциальными ошибками, которые могут возникать во время передачи сообщений из сетки событий в целевые объекты подписки, очередь хранилища и веб-перехватчик.

  5. Очередь учетной записи хранения: модуль Runbook запускается на сервере ЦС, настроенном как гибридная рабочая роль Runbook службы автоматизации. Он получает все сообщения в очереди учетной записи хранения, содержащие имя сертификата с истекающим сроком действия и хранилище ключей, на котором размещен модуль Runbook. Следующие действия выполняются для каждого сообщения в очереди.

  6. Продление сертификата: скрипт в runbook подключается к Azure для получения имени шаблона сертификата, настроенного во время создания. Шаблон — это компонент конфигурации центра сертификации, определяющий атрибуты и назначение создаваемых сертификатов.

    После интерфейса скрипта с Key Vault он инициирует запрос на продление сертификата. Этот запрос активирует Key Vault для создания запроса на подпись сертификата (CSR) и применяет тот же шаблон, который создал исходный сертификат. Этот процесс гарантирует, что обновленный сертификат соответствует предопределенным политикам безопасности. Дополнительные сведения о безопасности в процессе проверки подлинности и авторизации см . в разделе "Безопасность ".

    Скрипт скачивает CSR и отправляет его в ЦС.

    ЦС создает новый сертификат x509 на основе правильного шаблона и отправляет его обратно в скрипт. Этот шаг гарантирует, что обновленный сертификат соответствует предопределенным политикам безопасности.

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

  8. Мониторинг и уведомление по электронной почте. Все операции, выполняемые различными компонентами Azure, такими как учетная запись службы автоматизации, Key Vault, очередь учетной записи хранения и сетка событий, регистрируются в рабочей области журналов Azure Monitor для включения мониторинга. После слияния сертификата в хранилище ключей скрипт отправляет администраторам сообщение электронной почты, чтобы уведомить их о результатах.

  9. Получение сертификата. Расширение Key Vault на сервере играет важную роль на этом этапе. Он автоматически загружает последнюю версию сертификата из хранилища ключей в локальное хранилище сервера, используюющего сертификат. Вы можете настроить несколько серверов с расширением Key Vault, чтобы получить один и тот же сертификат (подстановочный знак или несколько сертификатов альтернативного имени субъекта (SAN) из хранилища ключей.

    Для дистрибутивов Linux, в которых невозможно установить расширение Azure Key Vault, можно запланировать выполнение скрипта script_for_not_supported_ARC_on_Linux_distro для достижения той же функциональности, что и расширение.

Компоненты

Решение использует различные компоненты для автоматического продления сертификатов в Azure. В следующих разделах описывается каждый компонент и его конкретная цель.

Расширение Key Vault

Расширение Key Vault играет важную роль в автоматизации продления сертификата и должно быть установлено на серверах, требующих автоматизации. Дополнительные сведения о процедурах установки на серверах Windows см . в расширении Key Vault для Windows. Дополнительные сведения о шагах по установке серверов Linux см . в расширении Key Vault для Linux. Дополнительные сведения о серверах с поддержкой Azure Arc см. в расширении Key Vault для серверов с поддержкой Arc.

Примечание.

Ниже приведены примеры сценариев, которые можно запустить из Azure Cloud Shell для настройки расширения Key Vault:

Параметры конфигурации расширения Key Vault включают:

  • Имя хранилища ключей: хранилище ключей, содержащее сертификат для продления.
  • Имя сертификата: имя сертификата, который необходимо обновить.
  • Хранилище сертификатов, имя и расположение: хранилище сертификатов, в котором хранится сертификат. На серверах Windows значение по умолчанию для имени и My расположенияLocalMachineэто личное хранилище сертификатов компьютера. На серверах Linux можно указать путь к файловой системе, предполагая, что значение по умолчанию — AzureKeyVaultхранилище сертификатов для Key Vault.
  • linkOnRenewal: флаг, указывающий, должен ли сертификат быть связан с сервером при продлении. Если задано true значение на компьютерах Windows, он копирует новый сертификат в хранилище и связывает его со старым сертификатом, который эффективно перестроит сертификат. Значение по умолчанию означает false , что требуется явная привязка.
  • pollingIntervalInS: интервал опроса для расширения Key Vault для проверки обновлений сертификатов. Значение по умолчанию — 3600 секунды (1 час).
  • authenticationSetting: параметр проверки подлинности для расширения Key Vault. Для серверов Azure этот параметр можно опустить, что означает, что управляемое удостоверение, назначаемое системой виртуальной машины, используется в хранилище ключей. Для локальных серверов, указывая параметр msiEndpoint = "http://localhost:40342/metadata/identity" , означает использование субъекта-службы, связанного с объектом компьютера, созданным во время подключения Azure Arc.

Примечание.

Укажите параметры расширения Key Vault только во время начальной настройки. Это гарантирует, что они не будут проходить никаких изменений во время процесса продления.

Учетная запись службы автоматизации

Учетная запись службы автоматизации обрабатывает процесс продления сертификата. Необходимо настроить учетную запись с помощью модуля Runbook с помощью скрипта PowerShell.

Кроме того, необходимо создать гибридную рабочую группу. Свяжите гибридную рабочую группу с членом Windows Server в том же домене Центра сертификации Active Directory, в идеале самого ЦС для запуска модулей Runbook.

Модуль Runbook должен иметь связанный веб-перехватчик , инициированный гибридной рабочей ролью Runbook. Настройте URL-адрес веб-перехватчика в подписке на событие системного раздела Сетки событий.

Очередь учетной записи хранения

Очередь учетной записи хранения хранит сообщения, содержащие имя обновляемого сертификата, и хранилище ключей, содержащее сертификат. Настройте очередь учетной записи хранения в подписке на событие системного раздела Сетки событий. Очередь обрабатывает развязку скрипта из события уведомления о истечении срока действия сертификата. Он поддерживает сохранение события в сообщении очереди. Этот подход помогает гарантировать, что процесс продления сертификатов повторяется с помощью запланированных заданий, даже если во время выполнения скрипта возникают проблемы.

Гибридная рабочая роль Runbook

Гибридная рабочая роль Runbook играет важную роль в использовании модулей Runbook. Необходимо установить гибридную рабочую роль Runbook с помощью метода расширения гибридной рабочей роли Azure, который является поддерживаемым режимом для новой установки. Вы создаете его и связываете его с членом Windows Server в том же домене Active Directory ЦС, что и сам ЦС.

Key Vault

Key Vault — это безопасный репозиторий для сертификатов. В разделе событий хранилища ключей свяжите системный раздел сетки событий с веб-перехватчиком учетной записи службы автоматизации и подпиской.

Сетка событий

Сетка событий обрабатывает взаимодействие на основе событий в Azure. Настройте сетку событий, настроив системный раздел и подписку на события для мониторинга соответствующих событий. К соответствующим событиям относятся оповещения о истечении срока действия сертификата, активация действий в рабочем процессе автоматизации и публикация сообщений в очереди учетной записи хранения. Настройте системный раздел "Сетка событий" со следующими параметрами:

  • Источник: имя хранилища ключей, содержащего сертификаты.
  • Тип источника: тип источника. Например, тип источника для этого решения.Azure Key Vault
  • Типы событий: тип события для отслеживания. Например, тип события для этого решения .Microsoft.KeyVault.CertificateNearExpiry Это событие активируется, когда сертификат близок к истечении срока действия.
  • Подписка на веб-перехватчик:
    • Имя подписки: имя подписки на событие.
    • Тип конечной точки: тип используемой конечной точки. Например, тип конечной точки для этого решения.Webhook
    • Конечная точка: URL-адрес веб-перехватчика, связанного с runbook учетной записи службы автоматизации. Дополнительные сведения см. в разделе учетной записи службы автоматизации.
  • Подписка для StorageQueue:
    • Имя подписки: имя подписки на событие.
    • Тип конечной точки: тип используемой конечной точки. Например, тип конечной точки для этого решения.StorageQueue
    • Конечная точка: очередь учетной записи хранения.

Рабочая область Log Analytics и книга Azure

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

  • Рабочая область Log Analytics: собирает и сохраняет данные о состояниях сертификатов, определяя, истекает ли срок действия, истекает ли срок действия в ближайшее время или по-прежнему действительна.

  • книге Azure: извлекает данные из рабочей области Log Analytics и представляет его на панели мониторинга с визуальными представлениями, такими как круговая диаграмма и подробные таблицы, классификация сертификатов на "Не истекший срок действия" (зеленый), "Срок действия в ближайшее время" (желтый) и "Истек срок действия" (красный).

Вот как извлекаются и представлены сведения о сертификате в книге:

  • выполнение runbook приема данных: модуль Runbook, выполняемый непосредственно из Azure (без необходимости в контексте гибридной рабочей роли), извлекает данные сертификата из Key Vault и отправляет эти сведения в настраиваемую таблицу, определенную в рабочей области Log Analytics. Модуль Runbook выполняется в запланированной каденции.

  • визуализация книги: книга запрашивает данные из настраиваемой таблицы и отображает ее как в круговой диаграмме, так и в подробной таблице, выделении сертификатов на основе их состояния истечения срока действия.

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

снимок экрана: панель мониторинга состояния сертификатов.

Альтернативные варианты

Это решение использует учетную запись службы автоматизации для оркестрации процесса продления сертификата и использования гибридной рабочей роли Runbook для обеспечения гибкости интеграции с ЦС локальной или в других облаках.

Альтернативный подход — использовать Logic Apps. Основное различие между двумя подходами заключается в том, что учетная запись службы автоматизации — это решение для платформы как услуга (PaaS), а Logic Apps — это программное обеспечение как услуга (SaaS).

Основное преимущество Logic Apps заключается в том, что это полностью управляемая служба. Вам не нужно беспокоиться о базовой инфраструктуре. Кроме того, Logic Apps может легко интегрироваться с внешними соединителями, расширяя диапазон возможностей уведомлений, таких как взаимодействие с Microsoft Teams или Microsoft 365.

Logic Apps не имеет функции, аналогичные гибридной рабочей роли Runbook, что приводит к менее гибкой интеграции с ЦС, поэтому учетная запись службы автоматизации является предпочтительным подходом.

Подробности сценария

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

Предприятия обычно работают с сложной ИТ-инфраструктурой, в которой участвуют несколько команд, ответственных за жизненный цикл сертификатов. Характер процесса продления сертификата вручную часто вызывает ошибки и потребляет ценное время.

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

Потенциальные варианты использования

Это решение обслуживает организации в различных отраслях, которые:

  • Используйте службу сертификатов Майкрософт для создания сертификатов сервера.
  • Требуется автоматизация в процессе продления сертификата для ускорения операций и минимизации ошибок, что помогает избежать нарушений соглашения об уровне обслуживания и потери бизнеса.
  • Требовать безопасное хранилище сертификатов в репозиториях, таких как Key Vault.

Эта архитектура служит базовым подходом к развертыванию в подписках целевой зоны приложений.

Рекомендации

Эти рекомендации реализуют основные принципы платформы Azure Well-Architected Framework, которая представляет собой набор руководящих принципов, которые можно использовать для улучшения качества рабочей нагрузки. Дополнительные сведения см. в статье Microsoft Azure Well-Architected Framework.

Безопасность

Безопасность обеспечивает гарантии от преднамеренного нападения и злоупотребления ценными данными и системами. Дополнительные сведения см. в разделе "Общие сведения о компоненте безопасности".

В системе Key Vault сертификаты безопасно хранятся в виде зашифрованных секретов, защищенных управлением доступом на основе ролей Azure (RBAC).

На протяжении всего процесса продления сертификата компоненты, использующие удостоверения:

  • Системная учетная запись гибридной рабочей роли Runbook, которая работает под учетной записью виртуальной машины.
  • Расширение Key Vault, которое использует управляемое удостоверение, связанное с виртуальной машиной.
  • Учетная запись службы автоматизации, которая использует назначенное управляемое удостоверение.

Принцип наименьшей привилегии строго применяется ко всем удостоверениям, участвующим в процедуре продления сертификата.

Системная учетная запись гибридного рабочего сервера Runbook должна иметь право на регистрацию сертификатов в одном или нескольких шаблонах сертификатов, создающих новые сертификаты.

В хранилище ключей, содержащего сертификаты, удостоверение учетной записи службы автоматизации должно иметь Key Vault Certificate Officer роль. Кроме того, серверы, требующие доступа к сертификатам, должны иметь Get и List разрешения в хранилище сертификатов Key Vault.

В очереди учетной записи хранения удостоверение учетной записи службы автоматизации должно иметь Storage Queue Data ContributorReader and Data AccessReader и роли.

В сценариях, когда расширение Key Vault развертывается на виртуальной машине Azure, проверка подлинности выполняется с помощью управляемого удостоверения виртуальной машины. Однако при развертывании на сервере с поддержкой Azure Arc проверка подлинности обрабатывается с помощью субъекта-службы. Управляемое удостоверение и субъект-служба должны быть назначены роли пользователя секрета Key Vault в хранилище ключей, в которой хранится сертификат. Необходимо использовать роль секрета, так как сертификат хранится в хранилище ключей в качестве секрета.

Оптимизация затрат

Оптимизация затрат заключается в поиске способов уменьшения ненужных расходов и повышения эффективности работы. Дополнительные сведения см . в контрольном списке проверки конструктора для оптимизации затрат.

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

Расходы, которые приводят к расширению Key Vault и гибридной рабочей роли Runbook, зависят от выбранных вариантов установки и интервалов опроса. Стоимость сетки событий соответствует объему событий, создаваемых Key Vault. В то же время стоимость учетной записи службы автоматизации сопоставляется с количеством используемых модулей Runbook.

Стоимость Key Vault зависит от различных факторов, включая выбранный номер SKU (standard или Premium), количество хранимых сертификатов и частоту операций, выполняемых на сертификатах.

Аналогичные рекомендации по конфигурациям, описанным для Key Vault, применяются одинаково к учетной записи хранения. В этом сценарии SKU уровня "Стандартный" с локально избыточной репликацией хранилища достаточно для учетной записи хранения. Как правило, стоимость очереди учетной записи хранения минимальна.

Чтобы оценить стоимость реализации этого решения, используйте калькулятор цен Azure, введя службы, описанные в этой статье.

Эффективность работы

Оперативное превосходство охватывает процессы операций, которые развертывают приложение и продолжают работать в рабочей среде. Дополнительные сведения см . в контрольном списке проверки конструктора для повышения эффективности работы.

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

Интеграция с сеткой событий активирует дополнительные действия, такие как уведомление Microsoft Teams или Microsoft 365 и упрощение процесса продления. Эта интеграция значительно сокращает время продления сертификата и снижает вероятность ошибок, которые могут привести к нарушениям бизнес-процессов и нарушениям соглашений об уровне обслуживания.

Кроме того, простая интеграция с Azure Monitor, Microsoft Sentinel, Microsoft Copilot для безопасности и Microsoft Defender для облака упрощает непрерывный мониторинг процесса продления сертификата. Он поддерживает обнаружение аномалий и гарантирует, что поддерживаются надежные меры безопасности.

Развертывание этого сценария

Нажмите следующую кнопку, чтобы развернуть среду, описанную в этой статье. Развертывание занимает около двух минут и создает хранилище ключей, системный раздел сетки событий, настроенный с двумя подписками, учетной записью хранения, содержащей очередь certlc, и учетную запись службы автоматизации, содержащую модуль Runbook и веб-перехватчик, связанный с Сеткой событий.

Развертывание в Azure

Подробные сведения о параметрах, необходимых для развертывания, можно найти на портале примера кода.

Внимание

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

  • домен Active Directory службы (AD DS) на виртуальной машине контроллера домена.
  • Службы сертификатов Active Directory (AD CS) на виртуальной машине ЦС, присоединенные к домену, настроенные с помощью шаблона WebServerShort для регистрации сертификатов для продления.
  • Сервер smtp-сервера Windows Simple Mail Transfer Protocol (SMTP) установлен на той же виртуальной машине ЦС для отправки Уведомления по электронной почте. MailViewer также устанавливается для проверки отправленного Уведомления по электронной почте.
  • Расширение Key Vault, установленное на виртуальной машине контроллера домена для получения обновленных сертификатов из расширения Key Vault.

Развертывание в Azure

Соавторы

Эта статья поддерживается корпорацией Майкрософт. Первоначально он был написан следующими участниками.

Основные авторы:

Чтобы просмотреть недоступные профили LinkedIn, войдите в LinkedIn.

Расширение Key Vault Key Vault