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


ведение журнала Azure Key Vault

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

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

  • Используйте стандартные методы Azure контроля доступа в учетной записи хранения, чтобы защитить журналы, ограничив доступ к ним.
  • Удаляйте журналы, которые больше не нужно хранить в учетной записи хранения.

Общие сведения о Key Vault см. в разделе Что такое Azure Key Vault?. Сведения о том, где доступен Key Vault, см. на странице . Сведения об использовании Azure Monitor для Key Vault.

Интерпретация журналов Key Vault

При включении ведения журнала для указанной учетной записи хранения автоматически создается новый контейнер с именем insights-logs-auditevent . Эту же учетную запись хранилища можно использовать для сбора журналов для нескольких хранилищ ключей.

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

    {
        "records":
        [
            {
                "time": "2016-01-05T01:32:01.2691226Z",
                "resourceId": "/SUBSCRIPTIONS/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/RESOURCEGROUPS/CONTOSOGROUP/PROVIDERS/MICROSOFT.KEYVAULT/VAULTS/CONTOSOKEYVAULT",
                "operationName": "VaultGet",
                "operationVersion": "2015-06-01",
                "category": "AuditEvent",
                "resultType": "Success",
                "resultSignature": "OK",
                "resultDescription": "",
                "durationMs": "78",
                "callerIpAddress": "104.40.82.76",
                "correlationId": "",
                "identity": {"claim":{"http://schemas.microsoft.com/identity/claims/objectidentifier":"d9da5048-2737-4770-bd64-XXXXXXXXXXXX","http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn":"live.com#username@outlook.com","appid":"00001111-aaaa-2222-bbbb-3333cccc4444"}},
                "properties": {"clientInfo":"azure-resource-manager/2.0","requestUri":"https://control-prod-wus.vaultcore.azure.net/subscriptions/361da5d4-a47a-4c79-afdd-XXXXXXXXXXXX/resourcegroups/contosoresourcegroup/providers/Microsoft.KeyVault/vaults/contosokeyvault?api-version=2015-06-01","id":"https://contosokeyvault.vault.azure.net/","httpStatusCode":200}
            }
        ]
    }

В следующей таблице перечислены имена и описания полей.

Имя поля Описание
Время Дата и время (в формате UTC).
resourceId Azure Resource Manager идентификатор ресурса. Для журналов Key Vault всегда используется идентификатор ресурса Key Vault.
operationName Имя операции, как описано в следующей таблице.
версияОперации Запрошенная клиентом версия REST API.
категория Тип результата. Для журналов Key Vault AuditEvent является единственным доступным значением.
типРезультата Результат запроса REST API.
resultSignature Состояние HTTP.
описание результата Дополнительные сведения о результатах, когда они доступны.
durationMs Время, затраченное на обработку запроса к REST API, в миллисекундах. Время не включает задержку сети, поэтому время, измеряемого на стороне клиента, может не соответствовать этому времени.
callerIpAddress IP-адрес клиента, выполнившего запрос.
correlationId Необязательный GUID, который клиент может передать для сопоставления журналов на стороне клиента с журналами на стороне службы (Key Vault).
идентичность Идентификационные данные извлекаются из токена, представленного в запросе к REST API. Обычно "пользователь", "учетная запись службы" или сочетание "пользователь+appId", например, когда запрос поступает из командлета Azure PowerShell.
свойства Сведения, которые зависят от операции (operationName). В большинстве случаев это поле содержит сведения о клиенте (передаваемая клиентом строка useragent), точный URI запроса REST API и код состояния HTTP. Кроме того, если объект возвращается в результате запроса (например, KeyCreate или VaultGet), он также содержит URI ключа (как id), универсальный код ресурса (URI) хранилища или URI секрета.

Значения полей operationName находятся в формате ObjectVerb . Рассмотрим пример.

  • Все операции хранилища ключей Vault<action> имеют формат, например VaultGet и VaultCreate.
  • Все ключевые Key<action> операции имеют формат, например KeySign и KeyList.
  • Все секретные Secret<action> операции имеют формат, например SecretGet и SecretListVersions.

В следующей таблице перечислены значения operationName и соответствующие команды REST API:

Таблица имен операций

ИмяОперации Команда REST API
Аутентификация Аутентифицируйтесь через конечную точку Microsoft Entra
VaultGet Получение сведений о хранилище ключей
VaultPut Создание или обновление хранилища ключей
VaultDelete Удаление хранилища ключей
VaultPatch Обновление хранилища ключей
VaultRecover Восстановление удаленного хранилища
УведомлениеСобытияИзмененияПолитикиДоступаК VaultGrid Опубликовано событие изменения политики доступа к хранилищу. Он регистрируется независимо от того, существует ли подписка Event Grid.

Использование журналов Azure Monitor

Решение Key Vault можно использовать для просмотра журналов Key Vault AuditEvent в журналах Azure Monitor. В журналах Azure Monitor вы используете запросы журналов для анализа данных и получения нужной информации.

Дополнительные сведения о настройке см. в разделе Azure Key Vault в Azure Monitor.

Сведения об анализе журналов см. в разделе "Примеры запросов журналов Kusto"

Дальнейшие действия