在建立一或多個受控 HSM 之後,您可能會想要監視 HSM 的存取方式、時間和存取者。 為此,您可以啟用記錄,以在您提供的 Azure 儲存體帳戶中儲存這方面的資訊。 系統會自動為您指定的儲存體帳戶建立名為 insights-logs-auditevent 的新容器。 您可以使用這個相同的儲存體帳戶來收集多個受控 HSM 的記錄。 您也可以選擇將記錄傳送至記錄分析工作區,然後可用來啟用Microsoft Sentinel 自動偵測可疑活動。
在受控 HSM 作業完成 10 分鐘 (最多) 後,您就可以存取記錄資訊。 在大部分情況下,它比較早。 儲存體帳戶中的記錄由您全權管理:
- 請使用標準的 Azure 存取控制方法限制可存取記錄的人員,藉此來保護記錄。
- 刪除不想繼續保留在儲存體帳戶中的記錄。
本教學課程可協助您開始使用受控 HSM 記錄。 啟用記錄並解譯收集的記錄資訊之前,您應該已建立記憶體帳戶或記錄分析工作區。
必要條件
若要完成本文中的步驟,您必須具有下列項目︰
- 訂閱 Microsoft Azure。 如果您沒有帳戶,您可以註冊免費試用。
- Azure CLI 2.25.0 版或更新版本。 執行
az --version以尋找版本。 如果您需要安裝或升級,請參閱安裝 Azure CLI 模組。 - 訂用帳戶中的受控 HSM。 請參閱快速入門:使用 Azure CLI 佈建並啟動受控 HSM,以佈建並啟動受控 HSM。
- Azure 記憶體帳戶和/或 Log Analytics 工作區。 如果您沒有一個或兩者,您可以使用 Azure 入口網站 建立它們:
Azure Cloud Shell
Azure Cloud Shell 是裝載於 Azure 中的互動式殼層環境,可在瀏覽器中使用。 您可以使用 Bash 或 PowerShell 搭配 Cloud Shell,與 Azure 服務共同使用。 您可以使用 Cloud Shell 預先安裝的命令,執行本文提到的程式碼,而不必在本機環境上安裝任何工具。
要啟動 Azure Cloud Shell:
| 選項 | 範例/連結 |
|---|---|
| 選取程式碼或命令區塊右上角的 [試試看]。 選取 [試試看] 並不會自動將程式碼或命令複製到 Cloud Shell 中。 |
|
| 請前往 https://shell.azure.com,或選取 [啟動 Cloud Shell] 按鈕,在瀏覽器中開啟 Cloud Shell。 |
|
| 選取 Azure 入口網站右上方功能表列上的 [Cloud Shell] 按鈕。 |
|
若要使用 Azure Cloud Shell:
啟動 Cloud Shell。
選取程式碼區塊 (或命令區塊) 上的 [複製] 按鈕以複製程式碼或命令。
透過在 Windows 和 Linux 上選取 Ctrl+Shift+V;或在 macOS 上選取 Cmd+Shift+V,將程式碼或命令貼到 Cloud Shell 工作階段中。
選取 Enter 鍵執行程式碼或命令。
連接到 Azure 訂用帳戶
使用 Azure CLI az login 命令登入您的 Azure 訂用帳戶:
az login
若要進一步了解透過 CLI 的登入選項,請參閱使用 Azure CLI 進行登入
識別受控 HSM、記憶體帳戶和記錄分析工作區
設定金鑰記錄的第一個步驟是尋找您想要記錄的受控 HSM。
使用 Azure CLI az keyvault show 命令來尋找您想要記錄的受控 HSM。
您也可以使用 Azure CLI az storage account show 命令來尋找您想要用於記錄的記憶體帳戶,以及/或 Azure CLI az monitor log-analytics workspace show 命令,以尋找您想要用於記錄的記錄分析工作區。
hsmresource=$(az keyvault show --hsm-name ContosoMHSM --query id -o tsv)
storageresource=$(az storage account show --name ContosoMHSMLogs --query id -o tsv)
loganalyticsresource=$(az monitor log-analytics workspace show --resource-group ContosoResourceGroup --workspace-name ContosoLogs --query id -o tsv)
啟用 記錄
若要啟用受控 HSM 的記錄功能,請使用 Azure CLI az monitor diagnostic-settings create 命令,以及先前命令中的變數。 我們也會將旗標設定 -Enabled 為 「true」 ,並將 設定 category 為 「AuditEvent」(受控 HSM 記錄的唯一類別)。
若要將記錄傳送至記憶體帳戶:
az monitor diagnostic-settings create --name ContosoMHSM-Diagnostics --resource $hsmresource --logs '[{"category": "AuditEvent","enabled": true}]' --storage-account $storageresource
若要將記錄傳送至Log Analytics工作區:
az monitor diagnostic-settings create --name "ContosoMHSM-Diagnostics" --resource $hsmresource --logs '[{"category": "AuditEvent","enabled": true}]' --workspace $loganalyticsresource
記錄了什麼
受控 HSM 會記錄下列類型的作業和事件:
- 所有已驗證的 REST API 要求,包括因存取權限、系統錯誤、防火牆封鎖或要求錯誤而導致的失敗要求。
- 對受控 HSM 資源本身,包括建立、刪除及更新屬性 (例如標籤) 的受控平面作業。
- 安全性網域的相關作業,例如初始化和下載、初始化復原、上傳
- 完整 HSM 備份、還原和選擇性還原作業
- 角色管理作業,例如建立/檢視/刪除角色指派,以及建立/檢視/刪除自訂角色定義
- 金鑰的作業,包括:
- 建立、修改或刪除金鑰。
- 簽署、驗證、加密、解密、包裝和解除包裝金鑰,以及列出金鑰。
- 金鑰備份、還原、清除
- 主要版本
- 導致 404 回應的無效路徑。
存取記錄
儲存體帳戶
受控 HSM 記錄儲存在您提供之儲存體帳戶的 insights-logs-auditevent 容器中。 若要查看記錄,您必須下載 Blob。 如需 Azure 儲存體的詳細資訊,請參閱使用 Azure CLI 建立、下載及列出 Blob。
個別的 Blob 會儲存為文字,並格式化為 JSON。 讓我們看看記錄項目範例。 這個範例會顯示當建立完整備份的要求傳送至受控 HSM 時,記錄專案。
[
{
"TenantId": "{tenant-id}",
"time": "2020-08-31T19:52:39.763Z",
"resourceId": "/SUBSCRIPTIONS/{subscription-id}/RESOURCEGROUPS/CONTOSORESOURCEGROUP/PROVIDERS/MICROSOFT.KEYVAULT/MANAGEDHSMS/CONTOSOMHSM",
"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\":\"admin@contoso.com\"}}}}",
"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://ContosoMHSM.managedhsm.azure.net/backup",
"resourceGroup": "ContosoResourceGroup",
"resourceProvider": "MICROSOFT.KEYVAULT",
"resource": "ContosoMHSM",
"resourceType": "managedHSMs"
}
]
Log Analytics 工作區
受控 HSM 記錄會儲存在您提供的 Log Analytics 工作區中。 您可以使用 Azure 入口網站 來查詢記錄。 如需詳細資訊,請參閱 Log Analytics 教學課程。
使用 Azure 監視器記錄
您可以使用 Azure 監視器記錄中的 Key Vault 解決方案來檢閱受控 HSM 的 AuditEvent 記錄。 在 Azure 監視器記錄中,您可以使用記錄查詢來分析資料,並取得所需的資訊。 如需詳細資訊,包括如何設定,請參閱 監視 Azure 受控 HSM。
如需瞭解如何分析記錄,請參閱 範例 Kusto 記錄查詢。
如果您要將記錄傳送至記錄分析工作區,您可以使用 Microsoft Sentinel 來自動偵測可疑活動。 請參閱 Microsoft Sentinel for Azure 受控 HSM。
下一步
- 了解如何 保護您的 Azure 管理 HSM 部署 以配置並使用受管理的 HSM
- 了解如何 備份與還原 管理型 HSM