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


Ведение журналов Managed HSM

После создания одного или нескольких управляемых HSM, скорее всего, необходимо отслеживать, как и когда осуществляется доступ к HSM, и кем. Этот доступ можно отслеживать, включив ведение журнала, которое сохраняет сведения в предоставленной учетной записи хранения Azure. Для указанной вами учетной записи автоматически создается контейнер с именем insights-logs-auditevent. Одну и ту же учетную запись можно использовать для сбора журналов нескольких управляемых устройств HSM. Вы также можете отправить журналы в рабочую область Log Analytics, которую можно использовать для автоматического обнаружения подозрительных действий Microsoft Sentinel.

Регистрируемые в журналах сведения становятся доступны не позднее чем через 10 минут после выполнения операции с управляемым устройством HSM. Скорее всего, это быстрее. Вы управляете журналами в учетной записи хранения:

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

Это руководство поможет вам начать работу с журналированием Managed HSM. У вас уже должна быть учетная запись хранения или рабочая область Log Analytics перед включением ведения журнала и интерпретацией собранных сведений журнала.

Требования

Требуется Azure подписка. Если у вас еще нет аккаунта, создайте бесплатную учетную запись, прежде чем начать.

Кроме того, вам понадобится следующее:

Azure Cloud Shell

Azure предоставляет Azure Cloud Shell, интерактивную среду оболочки, которую можно использовать через браузер. Вы можете использовать Bash или PowerShell с Cloud Shell для работы со службами Azure. Вы можете использовать предварительно установленные команды Cloud Shell для запуска кода в этой статье, не устанавливая ничего в локальной среде.

Чтобы начать Azure Cloud Shell, выполните приведенные действия.

Вариант Пример и ссылка
Нажмите кнопку Попробовать в правом верхнем углу блока кода или команд. Выбор Try It не копирует код или команду в Cloud Shell. Screenshot, показывающий пример пробной версии для Azure Cloud Shell.
Перейдите к https://shell.azure.com или нажмите кнопку Launch Cloud Shell, чтобы открыть Cloud Shell в браузере. Кнопка для запуска Azure Cloud Shell.
Нажмите кнопку Cloud Shell в строке меню в правом верхнем углу на портале Azure. Скриншот, показывающий кнопку Cloud Shell на портале Azure

Чтобы использовать Azure Cloud Shell:

  1. Запустите Cloud Shell.

  2. Нажмите кнопку Копировать в блоке кода (или блоке команд), чтобы скопировать код или команду.

  3. Вставьте код или команду в сеанс Cloud Shell, выбрав Ctrl+Shift+V в Windows и Linux, или выбрав Cmd+Shift+V в macOS.

  4. Нажмите клавишу ВВОД, чтобы запустить код или команду.

Подключение к подписке Azure

Войдите в подписку Azure с помощью команды Azure CLI az login:

az login

Дополнительные сведения о параметрах проверки подлинности с помощью интерфейса командной строки см. в разделе sign in with Azure CLI.

Определение управляемой рабочей области HSM, учетной записи хранения и рабочей области Log Analytics

Первым шагом в настройке аудита ключей является поиск управляемого HSM, для которого требуется вести журнал.

Используйте команду Azure CLI az keyvault show, чтобы найти управляемый модуль HSM, который вы хотите логировать.

Вы также можете использовать команду Azure CLI az storage account show, чтобы найти учетную запись хранения, которую вы хотите использовать для ведения журнала. Чтобы найти рабочую область log analytics, которую вы хотите использовать для ведения журнала, используйте команду Azure CLI az monitor log-analytics workspace show.

hsmresource=$(az keyvault show --hsm-name <hsm-name> --query id -o tsv)
storageresource=$(az storage account show --name <storage-account-name> --query id -o tsv)
loganalyticsresource=$(az monitor log-analytics workspace show --resource-group <resource-group> --workspace-name <workspace-name> --query id -o tsv)

Включение ведения журналов

Чтобы включить ведение журнала для управляемого устройства HSM, используйте команду Azure CLI az monitor diagnostic-settings create вместе с переменными из предыдущих команд. Задайте для -Enabled флага значение true, а для category — значение AuditEvent (единственная категория для ведения журнала управляемого HSM).

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

az monitor diagnostic-settings create --name <hsm-name>-Diagnostics --resource $hsmresource --logs '[{"category": "AuditEvent","enabled": true}]' --storage-account $storageresource

Чтобы отправить журналы в рабочую область Log Analytics:

az monitor diagnostic-settings create --name "<hsm-name>-Diagnostics" --resource $hsmresource --logs '[{"category": "AuditEvent","enabled": true}]' --workspace $loganalyticsresource

Что регистрируется

Управляемый HSM регистрирует следующие типы операций и событий:

  • Все запросы REST API, прошедшие проверку подлинности, включая неудачные запросы из-за разрешений доступа, системных ошибок, блоков брандмауэра или плохих запросов.
  • управляемые операции с управляемым ресурсом HSM, включая создание, удаление и обновление атрибутов, таких как метки;
  • Операции, связанные с доменом безопасности, такие как инициализация, скачивание, инициализация восстановления и отправка.
  • Полные операции резервного копирования, восстановления и выборочного восстановления HSM.
  • Такие операции управления ролями, как создание, просмотр и удаление назначений ролей, создание, просмотр и удаление настраиваемых определений ролей.
  • Операции с ключами, в том числе:
    • Создание, изменение или удаление ключей.
    • Подписывание, проверка, шифрование, расшифровка, упаковка и распакуние ключей и перечисление ключей.
    • Резервное копирование ключей, восстановление и очистка.
    • Выпуск ключа.
  • Некорректные пути, которые приводят к ответу 404.

Доступ к журналам

учетная запись хранения

Контейнер insights-logs-auditevent в предоставленной вами учетной записи хранения используется для хранения журналов управляемого HSM. Чтобы просмотреть журналы, необходимо скачать объекты. Для получения информации о служба хранилища Azure см. Создание, загрузка и перечисление blobs с помощью Azure CLI.

Отдельные объекты blob хранятся в виде текста, формата JSON. Ниже приведен пример записи журнала. В этом примере показано запись журнала, когда запрос на создание полной резервной копии отправляется управляемому HSM.

[
  {
    "TenantId": "<tenant-id>",
    "time": "2020-08-31T19:52:39.763Z",
    "resourceId": "/SUBSCRIPTIONS/<subscription-id>/RESOURCEGROUPS/<resource-group>/PROVIDERS/MICROSOFT.KEYVAULT/MANAGEDHSMS/<hsm-name>",
    "operationName": "BackupCreate",
    "operationVersion": "7.0",
    "category": "AuditEvent",
    "resultType": "Success",
    "properties": {
        "PoolType": "M-HSM",
        "sku_Family": "B",
        "sku_Name": "Standard_B1"
    },
    "durationMs": 488,
    "callerIpAddress": "X.X.X.X",
    "identity": "{\"claim\":{\"appid\":\"<application-id>\",\"http_schemas_microsoft_com_identity\":{\"claims\":{\"objectidentifier\":\"<object-id>\"}},\"http_schemas_xmlsoap_org_ws_2005_05_identity\":{\"claims\":{\"upn\":\"<user-email>\"}}}}",
    "clientInfo": "azsdk-python-core/1.7.0 Python/3.8.2 (Linux-4.19.84-microsoft-standard-x86_64-with-glibc2.29) azsdk-python-azure-keyvault/7.2",
    "correlationId": "aaaa0000-bb11-2222-33cc-444444dddddd",
    "subnetId": "(unknown)",
    "httpStatusCode": 202,
    "PoolName": "mhsmdemo",
    "requestUri": "https://<hsm-name>.managedhsm.azure.net/backup",
    "resourceGroup": "<resource-group>",
    "resourceProvider": "MICROSOFT.KEYVAULT",
    "resource": "<hsm-name>",
    "resourceType": "managedHSMs"
  }
]

Рабочая область Log Analytics

Рабочая область Log Analytics, предоставленная вами, в которой хранятся журналы управляемого модуля HSM. Портал Azure можно использовать для запроса журналов. Дополнительные сведения см. в руководстве Log Analytics.

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

Используйте решение Key Vault в журналах Azure Monitor для просмотра журналов Managed HSM AuditEvent. В журналах Azure Monitor используйте запросы для анализа данных и получения необходимых сведений. Дополнительные сведения о настройке см. в разделе Monitor Azure Managed HSM.

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

При отправке журналов в рабочую область Log Analytics можно использовать Microsoft Sentinel для автоматического обнаружения подозрительных действий. См. Microsoft Sentinel для Azure Managed HSM.

Следующие шаги