Självstudie: Konfigurera och göra en fråga om händelseloggning för Azure Cloud HSM

Azure Cloud HSM stöder åtgärdshändelseloggning via Log Analytics arbetsytor. Den här funktionen möjliggör centraliserad insamling, analys och övervakning av loggar i dina Cloud HSM-resurser.

Loggning av åtgärdshändelser är avgörande för den övergripande säkerheten för en maskinvarusäkerhetsmodul (HSM). Det ger en transparent och oföränderlig logg för all åtkomst och alla operationer, för att säkerställa ansvarsskyldighet och spårbarhet.

Genom att samla in information som användaraktiviteter, nyckelhanteringsåtgärder och systemhändelser hjälper åtgärdsloggar dig att identifiera obehörig åtkomst, undersöka säkerhetsincidenter och uppfylla regelkrav. De spelar också en viktig roll när det gäller att identifiera avvikelser som kan tyda på potentiella överträdelser eller felkonfigurationer. På så sätt stärker de en organisations förmåga att upprätthålla integriteten och konfidentialiteten för dess kryptografiska åtgärder.

I den här handledningen kommer du att:

  • Konfigurera händelseloggar för åtgärder, inklusive skapande av ett lagringskonto och en Log Analytics arbetsyta.
  • Sök i händelseloggar för att hämta specifika HSM-operationer.
  • Hämta en omfattande lista över HSM-åtgärdshändelser.

Viktigt!

För att upprätthålla säkerhet och sekretess utesluter loggning känslig information, till exempel nyckel-ID: er, nyckelnamn och annan identifierbar information som rör nycklar, användare eller sessioner. Loggarna registrerar den HSM-åtgärd som utförts, tidpunkten för åtgärden och relevanta HSM-metadata.

Azure Händelseloggning i Cloud HSM kan inte avgöra om en HSM-åtgärd lyckades eller misslyckades. Den kan bara logga det faktum att åtgärden kördes.

Förutsättningar

  • Ett Azure konto med en aktiv prenumeration. Du kan skapa ett konto kostnadsfritt.
  • En Azure Cloud HSM-resurs som du distribuerade, initierade och konfigurerade. Mer information finns i registreringsguiden för Azure Cloud HSM.

Ställ in och konfigurera händelseloggar för åtgärder

Använd kommandona i följande avsnitt för att konfigurera de resurser som du vill övervaka.

Skapa ett lagringskonto för att lagra HSM-loggar

Om du vill skapa ett lagringskonto för lagring av HSM-loggar måste du först skapa en resursgrupp. Du måste också skapa lagringskontot i den resursgruppen.

az group create --name "<resource-group>" --location "<location>"

az storage account create \
  --name "<storage-account-name>" \
  --resource-group "<resource-group>" \
  --location "<location>" \
  --sku Standard_LRS \
  --kind StorageV2

Skapa en Log Analytics arbetsyta

Använd följande kommando för att skapa en Log Analytics arbetsyta för att lagra och analysera HSM-loggar.

az monitor log-analytics workspace create \
  --resource-group "<resource-group>" \
  --workspace-name "<workspace-name>"

Mer information om hur du skapar en Log Analytics arbetsyta för Azure Monitor finns i Skapa en Log Analytics arbetsyta.

Aktivera diagnostikinställningar

Om du vill aktivera diagnostikinställningar för Azure händelseloggning för Cloud HSM-åtgärder använder du följande kod. Ersätt platshållarna med lämpliga värden för din miljö.

resourceId="/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.HardwareSecurityModules/cloudHsmClusters/<hsm-name>"

storageAccountId="/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>"

workspaceId="/subscriptions/<subscription-id>/resourcegroups/<resource-group>/providers/microsoft.operationalinsights/workspaces/<workspace-name>"

az monitor diagnostic-settings create \
  --resource $resourceId \
  --name "my-chsmAuditLogs" \
  --storage-account $storageAccountId \
  --workspace $workspaceId \
  --logs '[{"category":"HsmServiceOperations","enabled":true}]'

Verifiera konfigurationen av Cloud HSM-loggning

När du har skapat diagnostikinställningen börjar loggarna flöda på en till två minuter.

Du kan köra frågor mot händelseloggar för Cloud HSM-operationer från Azure-portalen genom Log Analytics-arbetsytan.

Skärmbild av händelseloggarna för Azure Cloud HSM-åtgärd i Azure portal.

Du kan också köra frågor mot händelseloggar för Cloud HSM-åtgärder med hjälp av Azure CLI eller Azure PowerShell.

workspaceId=$(az monitor log-analytics workspace show \
  --resource-group "<resource-group>" \
  --workspace-name "<workspace-name>" \
  --query customerId --output tsv)

az monitor log-analytics query \
  --workspace $workspaceId \
  --analytics-query "CloudHsmServiceOperationAuditLogs | take 10"

Skärmbild av händelseloggarna för Azure Cloud HSM-åtgärd i kommandoradsgränssnittet.

Registreringsfel

Om du får felmeddelandet "<subscription> inte har registrerats för att använda microsoft.insights" är din Azure-prenumeration inte registrerad för att använda resursprovidern Microsoft.Insights. För att lösa det här problemet måste du registrera dig hos Microsoft.Insights-providern i din prenumeration.

az provider register --namespace Microsoft.Insights

az provider show --namespace Microsoft.Insights --query "registrationState" --output table

När du har kört kommandot kontrollerar du att resursprovidern är registrerad. Om den fortfarande registreras kan du behöva vänta en stund och kontrollera igen.

Händelseloggar för frågeoperation

Du kan använda följande kommandon för att hämta specifika HSM-åtgärdshändelser som registrerats i åtgärdsloggar. Om du vill visa en lista över alla åtgärdshändelser, kör bara CloudHsmServiceOperationAuditLogs.

Mer information om andra åtgärder som kan efterfrågas finns i den omfattande listan över registrerade åtgärder senare i den här artikeln.

Inloggnings- och sessionshändelser

// Find login and session events
CloudHsmServiceOperationAuditLogs
| where OperationName in ("CN_LOGIN", "CN_AUTHORIZE_SESSION")
| project OperationName, MemberId, CallerIpAddress, TimeGenerated

Händelser för att skapa och ta bort användare

// Find user creation and deletion events 
CloudHsmServiceOperationAuditLogs
| where OperationName in ("CN_CREATE_USER", "CN_DELETE_USER")
| project OperationName, MemberId, CallerIpAddress, TimeGenerated

Händelser för att skapa nycklar

// Find key creation events
CloudHsmServiceOperationAuditLogs
| where OperationName in ("CN_GENERATE_KEY", "CN_GENERATE_KEY_PAIR")
| project OperationName, MemberId, CallerIpAddress, TimeGenerated

Händelser för borttagning av nyckel

// Find key deletion events
CloudHsmServiceOperationAuditLogs
| where OperationName == "CN_TOMBSTONE_OBJECT"
| project OperationName, MemberId, CallerIpAddress, TimeGenerated

Ordlista över åtgärder

Följande namn är relaterade till HSM-åtgärdshändelser.

azcloudhsm_util

Operationsnamn Kommandonamn Beskrivning
CN_LOGIN loginHSM Loggar in på HSM.
CN_LOGOUT logoutHSM Loggar ut från HSM.
CN_GENERATE_KEY genSymKey Genererar en symmetrisk nyckel.
CN_GENERATE_KEY_PAIR genRSAKeyPair Genererar ett RSA-nyckelpar.
CN_GENERATE_KEY_PAIR genECCKeyPair Genererar ett ECC-nyckelpar.
CN_SHARE_OBJECT shareKey Delar/av delar en befintlig nyckel med andra användare.
CN_TOMBSTONE_OBJECT deleteKey Tar bort en nyckel.
CN_FIND_OBJECTS_FROM_INDEX findSingleKey Hittar en enda nyckel.
CN_FIND_OBJECTS_USING_COUNT findKey Hittar en nyckel.
CN_GET_OBJECT_INFO getKeyInfo Hämtar viktig information om delade användare/sessioner.
HASH_SINGLE_CALL sign Genererar en signatur (ME_PKCS_PKCS1v15_CRT_ENCRYPT).
HASH_SINGLE_CALL verify Verifierar en signatur (ME_PKCS_PKCS1v15_DECRYPT).
CN_LIST_TOKENS listTokens Visar en lista över alla token i den aktuella partitionen.
CN_GET_TOKEN getToken Hämtar en token.
CN_CREATE_USER createUser Skapar en användare.
CN_DELETE_USER deleteUser Tar bort en användare.
CN_LIST_USERS listUsers Visar en lista över användare.
CN_CHANGE_PSWD changePswd Ändrar ett lösenord.
CN_MODIFY_OBJECT setAttribute Anger ett attribut för ett objekt.
CN_GET_ATTRIBUTE_VALUE
CN_GET_ALL_ATTRIBUTE_VALUE
CN_GET_ATTRIBUTE_SIZE
CN_GET_ALL_ATTRIBUTE_SIZE
getAttribute Hämtar ett attribut för ett objekt.
CN_TOKEN_INFO getHSMInfo Hämtar HSM-information.
CN_PARTITION_INFO getPartitionInfo Hämtar partitionsinformationen.
--- getClusterInfo Inte inspelad.
--- server Inte inspelad.

azcloudhsm_mgmt

Operationsnamn Kommandonamn Beskrivning
CN_LOGIN loginHSM Loggar in på HSM.
CN_LOGOUT logoutHSM Loggar ut från HSM.
CN_GENERATE_KEY genSymKey Genererar en symmetrisk nyckel.
CN_GENERATE_KEY_PAIR genRSAKeyPair Genererar ett RSA-nyckelpar.
CN_GENERATE_KEY_PAIR genECCKeyPair Genererar ett ECC-nyckelpar.
CN_SHARE_OBJECT shareKey Delar/av delar en befintlig nyckel med andra användare.
CN_TOMBSTONE_OBJECT deleteKey Tar bort en nyckel.
CN_FIND_OBJECTS_FROM_INDEX findSingleKey Hittar en enda nyckel.
CN_FIND_OBJECTS_USING_COUNT findKey Hittar en nyckel.
CN_GET_OBJECT_INFO getKeyInfo Hämtar viktig information om delade användare/sessioner.
HASH_SINGLE_CALL sign Genererar en signatur (ME_PKCS_PKCS1v15_CRT_ENCRYPT).
HASH_SINGLE_CALL verify Verifierar en signatur (ME_PKCS_PKCS1v15_DECRYPT).
CN_LIST_TOKENS listTokens Visar en lista över alla token i den aktuella partitionen.
CN_GET_TOKEN getToken Hämtar en token.
CN_CREATE_USER createUser Skapar en användare.
CN_DELETE_USER deleteUser Tar bort en användare.
CN_LIST_USERS listUsers Visar en lista över användare.
CN_CHANGE_PSWD changePswd Ändrar ett lösenord.
CN_MODIFY_OBJECT setAttribute Anger ett attribut för ett objekt.
CN_GET_ATTRIBUTE_VALUE
CN_GET_ALL_ATTRIBUTE_VALUE
CN_GET_ATTRIBUTE_SIZE
CN_GET_ALL_ATTRIBUTE_SIZE
getAttribute Hämtar ett attribut för ett objekt.
CN_TOKEN_INFO getHSMInfo Hämtar HSM-information.
CN_PARTITION_INFO getPartitionInfo Hämtar partitionsinformationen.
--- getClusterInfo Inte inspelad.
--- server Inte inspelad.

Säkerhetskopiering och återställning

Operationsnamn Kommandonamn Beskrivning
/backup
/restore