Importa i log delle attività di Microsoft Azure
Questo documento descrive i passaggi necessari per importare i log delle attività di Microsoft Azure
(AZURE_ACTIVITY
) in Google Security Operations.
Configurare un account di archiviazione
Per configurare un account Storage:
- Nella console di Azure, cerca Account di archiviazione.
- Fai clic su Crea.
- Seleziona l'abbonamento, il gruppo di risorse, la regione, le prestazioni (consigliamo Standard) e la ridondanza (consigliamo GRS o LRS) necessari per l'account, poi inserisci un nome per il nuovo account di archiviazione.
- Fai clic su Rivedi e crea, esamina la panoramica dell'account e fai clic su Crea.
- Nella pagina Panoramica dell'account di archiviazione, seleziona Chiavi di accesso dal riquadro di navigazione a sinistra della finestra.
- Fai clic su Mostra chiavi e prendi nota della chiave condivisa per l'account di archiviazione.
- Seleziona Endpoint dal menu di navigazione a sinistra della finestra.
- Prendi nota dell'endpoint del servizio Blob. (https://<storageaccountname>.blob.core.windows.net/)
Configurare il logging delle attività di Azure
Per configurare il logging delle attività di Azure:
- Nella console di Azure, cerca Monitor.
- Fai clic sul link Log attività nel riquadro di navigazione a sinistra della pagina.
- Fai clic su Esporta log attività nella parte superiore della finestra.
- Fai clic su Aggiungi impostazione di diagnostica.
- Seleziona tutte le categorie che vuoi esportare in Google Security Operations.
- In Dettagli destinazione, seleziona Archivia in un account di archiviazione.
- Seleziona l'abbonamento e l'account di archiviazione che hai creato nel passaggio precedente.
- Fai clic su Salva.
Configura un feed in Google Security Operations per importare i log di Azure
Completa i seguenti passaggi per configurare un feed in Google Security Operations per importare i log di Azure:
- Vai a Impostazioni SIEM > Feed.
- Fai clic su Add New (Aggiungi nuovo).
- Inserisci un nome univoco per il nome del campo.
- Seleziona Microsoft Azure Blob Storage come Tipo di origine.
- Seleziona Attività Microsoft Azure come Tipo di log.
- Fai clic su Avanti.
- Configura i seguenti parametri di input obbligatori:
- URI di Azure: inserisci il valore dell'endpoint del servizio Blob registrato in precedenza, con il suffisso insights-activity-logs (ad esempio, https://acme-azure-chronicle.blob.core.windows.net/insights-activity-logs)
- L'URI è una: seleziona Directory che include sottodirectory.
- Opzione di eliminazione dell'origine: specifica se eliminare file e directory dopo il trasferimento.
- Chiave condivisa: inserisci il valore della chiave condivisa acquisito in precedenza.
- Fai clic su Avanti e poi su Invia.
Riferimento alla mappatura dei campi
Questo codice del parser inizializza innanzitutto un numero elevato di campi con stringhe vuote, quindi esegue una serie di manipolazioni di stringhe e operazioni di analisi JSON per estrarre le informazioni pertinenti dal messaggio del log delle attività di Azure. Infine, mappa i dati estratti ai campi del modello di dati unificato (UDM), classifica il tipo di evento e lo arricchisce con ulteriori dettagli come gravità, informazioni principali e dati di rete.
Tabella di mappatura UDM
Campo log | Mappatura UDM | Logic |
---|---|---|
categoria | read_only_udm.security_result.category_details |
Mappato direttamente dal campo "category" nel log non elaborato. |
callerIpAddress | read_only_udm.principal.asset.ip , read_only_udm.principal.ip |
Mappato direttamente dal campo "callerIpAddress" nel log non elaborato. |
correlationId | read_only_udm.security_result.detection_fields.correlationId |
Mappato direttamente dal campo "correlationId" nel log non elaborato. |
data.callerIpAddress | read_only_udm.principal.asset.ip , read_only_udm.principal.ip |
Mappato direttamente dal campo "callerIpAddress" all'interno dell'oggetto "data" nel log non elaborato. |
data.correlationId | read_only_udm.security_result.detection_fields.correlationId |
Mappato direttamente dal campo "correlationId" all'interno dell'oggetto "data" nel log non elaborato. |
data.DeploymentUnit | read_only_udm.target.resource.name |
Mappato direttamente dal campo "DeploymentUnit" all'interno dell'oggetto "data" nel log non elaborato. |
data.details | read_only_udm.metadata.description |
Mappato direttamente dal campo "details" all'interno dell'oggetto "data" nel log non elaborato, solo se il campo "details" non è "Sconosciuto". |
data.entity | read_only_udm.additional.fields.entity |
Mappato direttamente dal campo "entity" all'interno dell'oggetto "data" nel log non elaborato. |
data.EventName | read_only_udm.metadata.product_event_type |
Mappato direttamente dal campo "EventName" all'interno dell'oggetto "data" nel log non elaborato. |
data.hierarchy | read_only_udm.additional.fields.hierarchy |
Mappato direttamente dal campo "hierarchy" all'interno dell'oggetto "data" nel log non elaborato. |
data.identity.authorization.action | read_only_udm.security_result.detection_fields.action |
Mappato direttamente dal campo "action" all'interno dell'oggetto "authorization" dell'oggetto "identity" nel log non elaborato. |
data.identity.authorization.evidence.principalId | read_only_udm.principal.user.product_object_id , read_only_udm.principal.resource.product_object_id , read_only_udm.principal.group.product_object_id |
Mappato direttamente dal campo "principalId" all'interno dell'oggetto "evidence" dell'oggetto "authorization" dell'oggetto "identity" nel log non elaborato. Il campo UDM specifico a cui viene mappato dipende dal valore del campo "principalType". Se "principalType" è "User" o "ServicePrincipal", viene mappato a principal.user.product_object_id . Se "principalType" è "Group", viene mappato a principal.group.product_object_id . Se "principalType" è "ServicePrincipal", viene mappato a principal.resource.product_object_id . |
data.identity.authorization.evidence.principalType | read_only_udm.principal.resource.resource_subtype |
Mappato direttamente dal campo "principalType" all'interno dell'oggetto "evidence" dell'oggetto "authorization" dell'oggetto "identity" nel log non elaborato. |
data.identity.authorization.evidence.role | read_only_udm.principal.user.role_name |
Mappato direttamente dal campo "role" all'interno dell'oggetto "evidence" dell'oggetto "authorization" dell'oggetto "identity" nel log non elaborato. |
data.identity.authorization.evidence.roleAssignmentId | read_only_udm.principal.resource.attribute.labels.roleAssignmentId |
Mappato direttamente dal campo "roleAssignmentId" all'interno dell'oggetto "evidence" dell'oggetto "authorization" dell'oggetto "identity" nel log non elaborato. |
data.identity.authorization.evidence.roleAssignmentScope | read_only_udm.principal.resource.attribute.labels.roleAssignmentScope |
Mappato direttamente dal campo "roleAssignmentScope" all'interno dell'oggetto "evidence" dell'oggetto "authorization" dell'oggetto "identity" nel log non elaborato. |
data.identity.authorization.evidence.roleDefinitionId | read_only_udm.principal.resource.attribute.labels.roleDefinitionId |
Mappato direttamente dal campo "roleDefinitionId" all'interno dell'oggetto "evidence" dell'oggetto "authorization" dell'oggetto "identity" nel log non elaborato. |
data.identity.authorization.scope | read_only_udm.security_result.detection_fields.scope |
Mappato direttamente dal campo "scope" all'interno dell'oggetto "authorization" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.aio | read_only_udm.security_result.detection_fields.aio |
Mappato direttamente dal campo "aio" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.appid | read_only_udm.security_result.detection_fields.appid |
Mappato direttamente dal campo "appid" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.appidacr | read_only_udm.security_result.detection_fields.appidacr |
Mappato direttamente dal campo "appidacr" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.aud | read_only_udm.security_result.detection_fields.aud |
Mappato direttamente dal campo "aud" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.exp | read_only_udm.security_result.detection_fields.exp |
Mappato direttamente dal campo "exp" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.http://schemas.microsoft.com/identity/claims/identityprovider |
read_only_udm.security_result.detection_fields.identityprovider |
Mappato direttamente dal campo "http://schemas.microsoft.com/identity/claims/identityprovider" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.http://schemas.microsoft.com/identity/claims/objectidentifier |
read_only_udm.security_result.detection_fields.objectidentifier |
Mappato direttamente dal campo "http://schemas.microsoft.com/identity/claims/objectidentifier" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.http://schemas.microsoft.com/identity/claims/tenantid |
read_only_udm.security_result.detection_fields.tenantid |
Mappato direttamente dal campo "http://schemas.microsoft.com/identity/claims/tenantid" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier |
read_only_udm.security_result.detection_fields.nameidentifier |
Mappato direttamente dal campo "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.iat | read_only_udm.security_result.detection_fields.iat |
Mappato direttamente dal campo "iat" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.iss | read_only_udm.security_result.detection_fields.iss |
Mappato direttamente dal campo "iss" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.nbf | read_only_udm.security_result.detection_fields.nbf |
Mappato direttamente dal campo "nbf" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.rh | read_only_udm.security_result.detection_fields.rh |
Mappato direttamente dal campo "rh" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.uti | read_only_udm.security_result.detection_fields.uti |
Mappato direttamente dal campo "uti" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.ver | read_only_udm.security_result.detection_fields.ver |
Mappato direttamente dal campo "ver" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.claims.xms_tcdt | read_only_udm.security_result.detection_fields.xms_tcdt |
Mappato direttamente dal campo "xms_tcdt" all'interno dell'oggetto "claims" dell'oggetto "identity" nel log non elaborato. |
data.identity.UserName | read_only_udm.principal.user.user_display_name |
Mappato direttamente dal campo "UserName" all'interno dell'oggetto "identity" nel log non elaborato. |
data.level | read_only_udm.security_result.severity , read_only_udm.security_result.severity_details |
Mappato direttamente dal campo "level" all'interno dell'oggetto "data" nel log non elaborato. Il campo "livello" viene utilizzato anche per determinare il valore del campo severity . Se "level" è "Information" o "Informational", severity viene impostato su "INFORMATIONAL". Se "level" è "Warning", severity è impostato su "MEDIUM". Se "level" è "Error", severity viene impostato su "ERROR". Se "level" è "Critical", severity è impostato su "CRITICAL". |
data.location | read_only_udm.target.location.name |
Mappato direttamente dal campo "location" all'interno dell'oggetto "data" nel log non elaborato. |
data.operationName | read_only_udm.metadata.product_event_type |
Mappato direttamente dal campo "operationName" all'interno dell'oggetto "data" nel log non elaborato. |
data.properties.EventChannel | read_only_udm.additional.fields.properties EventChannel |
Mappato direttamente dal campo "EventChannel" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.EventSource | read_only_udm.additional.fields.properties EventSource |
Mappato direttamente dal campo "EventSource" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.EventId | read_only_udm.metadata.product_log_id |
Mappato direttamente dal campo "EventId" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.eventProperties.cause | read_only_udm.security_result.detection_fields.cause |
Mappato direttamente dal campo "cause" all'interno dell'oggetto "eventProperties" dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.eventProperties.clientIPAddress | read_only_udm.principal.asset.ip , read_only_udm.principal.ip |
Mappato direttamente dal campo "clientIPAddress" all'interno dell'oggetto "eventProperties" dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.eventProperties.compromisedHost | read_only_udm.principal.asset.hostname , read_only_udm.principal.hostname |
Mappato direttamente dal campo "compromisedHost" all'interno dell'oggetto "eventProperties" dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.eventProperties.currentHealthStatus | read_only_udm.security_result.detection_fields.currentHealthStatus |
Mappato direttamente dal campo "currentHealthStatus" all'interno dell'oggetto "eventProperties" dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.eventProperties.previousHealthStatus | read_only_udm.security_result.detection_fields.previousHealthStatus |
Mappato direttamente dal campo "previousHealthStatus" all'interno dell'oggetto "eventProperties" dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.eventProperties.type | read_only_udm.security_result.detection_fields.type |
Mappato direttamente dal campo "type" all'interno dell'oggetto "eventProperties" dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.eventProperties.User | read_only_udm.principal.user.userid |
Mappato direttamente dal campo "Utente" all'interno dell'oggetto "eventProperties" dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.eventProperties.userName | read_only_udm.principal.user.user_display_name |
Mappato direttamente dal campo "userName" all'interno dell'oggetto "eventProperties" dell'oggetto "properties" dell'oggetto "data" nel log non elaborato, dopo aver rimosso il prefisso "SECURE\". |
data.properties.ipAddress | read_only_udm.principal.asset.ip , read_only_udm.principal.ip |
Mappato direttamente dal campo "ipAddress" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.legacyChannels | read_only_udm.security_result.detection_fields.legacyChannels |
Mappato direttamente dal campo "legacyChannels" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.legacyEventDataId | read_only_udm.security_result.detection_fields.legacyEventDataId |
Mappato direttamente dal campo "legacyEventDataId" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.legacyResourceId | read_only_udm.security_result.detection_fields.legacyResourceId |
Mappato direttamente dal campo "legacyResourceId" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.legacyResourceGroup | read_only_udm.security_result.detection_fields.legacyResourceGroup |
Mappato direttamente dal campo "legacyResourceGroup" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.legacyResourceProviderName | read_only_udm.security_result.detection_fields.legacyResourceProviderName |
Mappato direttamente dal campo "legacyResourceProviderName" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.legacyResourceType | read_only_udm.security_result.detection_fields.legacyResourceType |
Mappato direttamente dal campo "legacyResourceType" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.legacySubscriptionId | read_only_udm.security_result.detection_fields.legacySubscriptionId |
Mappato direttamente dal campo "legacySubscriptionId" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.operationId | read_only_udm.security_result.detection_fields.operationId |
Mappato direttamente dal campo "operationId" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.result | read_only_udm.security_result.action_details |
Mappato direttamente dal campo "result" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.statusCode | read_only_udm.network.http.response_code |
Mappato direttamente dal campo "statusCode" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.suspiciousCommandLine | read_only_udm.target.process.command_line |
Mappato direttamente dal campo "suspiciousCommandLine" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.suspiciousProcess | read_only_udm.target.process.file.full_path |
Mappato direttamente dal campo "suspiciousProcess" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.suspiciousProcessId | read_only_udm.target.process.pid |
Mappato direttamente dal campo "suspiciousProcessId" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.tlsVersion | read_only_udm.network.tls.version |
Mappato direttamente dal campo "tlsVersion" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.userAgent | read_only_udm.network.http.user_agent , read_only_udm.network.http.parsed_user_agent |
Mappato direttamente dal campo "userAgent" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.userAgentHeader | read_only_udm.network.http.user_agent , read_only_udm.network.http.parsed_user_agent |
Mappato direttamente dal campo "userAgentHeader" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.properties.userId | read_only_udm.target.user.product_object_id |
Mappato direttamente dal campo "userId" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato. |
data.ReleaseVersion | read_only_udm.metadata.product_version |
Mappato direttamente dal campo "ReleaseVersion" all'interno dell'oggetto "data" nel log non elaborato. |
data.resourceId | read_only_udm.target.resource.name |
Mappato direttamente dal campo "resourceId" all'interno dell'oggetto "data" nel log non elaborato. |
data.resourceType | read_only_udm.additional.fields.resourceType |
Mappato direttamente dal campo "resourceType" all'interno dell'oggetto "data" nel log non elaborato. |
data.resultDescription | read_only_udm.metadata.description |
Mappato direttamente dal campo "resultDescription" all'interno dell'oggetto "data" nel log non elaborato. |
data.resultSignature | read_only_udm.additional.fields.resultSignature |
Mappato direttamente dal campo "resultSignature" all'interno dell'oggetto "data" nel log non elaborato. |
data.resultType | read_only_udm.security_result.action_details , read_only_udm.additional.fields.resultType |
Mappato direttamente dal campo "resultType" all'interno dell'oggetto "data" nel log non elaborato. |
data.RoleLocation | read_only_udm.target.location.name |
Mappato direttamente dal campo "RoleLocation" all'interno dell'oggetto "data" nel log non elaborato. |
data.time | read_only_udm.metadata.event_timestamp |
Il campo "time" all'interno dell'oggetto "data" nel log non elaborato viene analizzato per estrarre il timestamp, che viene poi mappato a event_timestamp . |
data.uri | read_only_udm.network.http.referral_url |
Mappato direttamente dal campo "uri" all'interno dell'oggetto "data" nel log non elaborato. |
read_only_udm.extensions.auth.mechanism |
INTERACTIVE |
Impostato su "INTERACTIVE" se il campo "isInteractive" all'interno dell'oggetto "properties" dell'oggetto "data" nel log non elaborato è "true". In caso contrario, viene impostato su "MECHANISM_OTHER". |
read_only_udm.extensions.auth.type |
MACHINE |
Imposta su "MACCHINA" se il campo "category" nel log non elaborato è "NonInteractiveUserSignInLogs", "ManagedIdentitySignInLogs" o "ServicePrincipalSignInLogs". |
read_only_udm.metadata.log_type |
AZURE_ACTIVITY |
Hardcoded in "AZURE_ACTIVITY". |
read_only_udm.metadata.vendor_name |
Microsoft |
Hardcoded su "Microsoft". |
read_only_udm.principal.platform |
WINDOWS , MAC , LINUX , ANDROID |
Determinato in base al valore del campo "properties.test.deviceDetail.operatingSystem". Se contiene "Win", platform viene impostato su "WINDOWS". Se contiene "Mac", platform è impostato su "MAC". Se contiene "Lin", platform viene impostato su "LINUX". Se contiene "Android", platform viene impostato su "ANDROID". |
read_only_udm.principal.resource.type |
SERVICE_ACCOUNT , UNSPECIFIED |
Determinato in base al valore del campo "identity.authorization.evidence.principalType". Se è "ServicePrincipal", type è impostato su "SERVICE_ACCOUNT". In caso contrario, viene impostato su "UNSPECIFIED". |
read_only_udm.security_result.action |
ALLOW , BLOCK , UNKNOWN_ACTION |
Determinato in base ai valori dei campi "resultType", "status_errorcode" e "statusText". Se "resultType" è uno dei valori "Success", "success", "Succeeded", "Started", "Resolved", "Active", "Updated", "Start", "Accept", "Accepted", "0" oppure se "status_errorcode" è 0 oppure se "statusText" è "Success", action è impostato su "ALLOW". Se "resultType" è uno dei valori "Failure", "Failed", se "status_errorcode" non è vuoto o se "resultType" non è vuoto, action viene impostato su "BLOCK". In caso contrario, viene impostato su "UNKNOWN_ACTION". |
read_only_udm.target.cloud.environment |
MICROSOFT_AZURE |
Hardcoded su "MICROSOFT_AZURE". |
Modifiche
2024-07-10
- Se "identity.authorization.evidence.principalType" è uguale a "Group", mappa "identity.authorization.evidence.principalId" a "principal.group.product_object_id".
- Se "identity.authorization.evidence.principalType" è uguale a "User" o "ServicePrincipal", mappa "identity.authorization.evidence.principalId" a "principal.user.product_object_id".
- È stato aggiunto gsub per modificare il campo "properties" in "properties.test" ed è stato rimosso il campo che inizia solo con "properties".
2024-07-08
- Sono stati mappati "properties.compromisedEntity", "properties.attackedResourceType" e "properties.intent" a "target.resource.attribute.labels".
- "properties.severity" è stato mappato a "security_result.severity".
2024-06-18
- Quando "principal.user.userid" non è presente, la mappatura di "metadata.event_type" è stata modificata da "USER_RESOURCE_ACCESS" a "GENERIC_EVENT".
2024-06-18
- "operationVersion" è stato mappato a "metadata.product_version".
- "properties.authenticationRequirementPolicies.requirementProvider" e "properties.authenticationRequirementPolicies.detail" sono stati mappati a "security_result.detection_fields".
- Sono stati mappati "properties.authenticationDetails.StatusSequence", "properties.correlationId", "properties.uniqueTokenIdentifier" e "properties.authenticationDetails.RequestSequence" a "security_result.detection_fields".
- "properties.appDisplayName" è stato mappato a "target.application".
- "properties.conditionalAccessStatus", "properties.appliedConditionalAccessPolicies", "properties.authenticationContextClassReferences", "properties.signInTokenProtectionStatus", "properties.originalRequestId", "properties.authenticationProcessingDetails", "properties.clientCredentialType", "properties.processingTimeInMilliseconds", "properties.riskDetail", "properties.riskLevelAggregated", "properties.riskLevelDuringSignIn", "properties.riskState" e "properties.originalTransferMethod" sono stati mappati a "additional.fields".
- Sono stati mappati "properties.riskEventTypes", "properties.riskEventTypes_v2", "properties.homeTenantId", "properties.autonomousSystemNumber", "properties.autonomousSystemNumber" e "properties.privateLinkDetails" a "additional.fields".
- "properties.resourceId", "properties.resourceTenantId" e "properties.resourceServicePrincipalId" sono stati mappati a "target.resource.attribute.labels".
- "properties.userType" è stato mappato a "principal.user.attribute.roles".
- "properties.userPrincipalName" è stato mappato a "principal.user.email_addresses".
- "properties.clientAppUsed" è stato mappato a "principal.application".
- "properties.deviceDetail.deviceId" è stato mappato a "principal.asset.asset_id" e "principal.asset_id".
- "properties.appId" è stato mappato a "target.resource.attribute.labels".
- "properties.status.additionalDetails" è stato mappato a "security_result.description".
- "properties.responseBody.name" è stato mappato a "security_result.rule_name".
- "properties.responseBody.properties.sourcePortRanges" e "properties.responseBody.properties.destinationPortRanges" sono stati mappati a "additional.fields".
- Quando "properties.responseBody.properties.sourceAddressPrefixes" è un singolo indirizzo IP, viene mappato a "principal.ip".
- Quando "properties.responseBody.properties.sourceAddressPrefixes" è un intervallo di indirizzi IP, viene mappato a "additional.fields".
- Quando "properties.responseBody.properties.sourceAddressPrefix" è un singolo indirizzo IP o indirizzo IP con porta, viene mappato a "principal.ip" e "principal.port".
- Quando "properties.responseBody.properties.sourceAddressPrefix" è un intervallo di indirizzi IP, viene mappato a "additional.fields".
- Quando "properties.responseBody.properties.destinationAddressPrefixes" è un singolo indirizzo IP, viene mappato a "target.ip".
- Quando "properties.responseBody.properties.destinationAddressPrefixes" è un intervallo di indirizzi IP, viene mappato a "additional.fields".
- Quando "properties.responseBody.properties.destinationAddressPrefix" è un singolo indirizzo IP o un indirizzo IP con porta, viene mappato a "target.ip" e "target.port".
- Quando "properties.responseBody.properties.destinationAddressPrefix" è un intervallo di indirizzi IP, viene mappato a "additional.fields".
- Quando "properties.responseBody.properties.sourcePortRange" è una singola porta, viene mappata a "principal.port".
- Quando "properties.responseBody.properties.sourcePortRange" è un intervallo di porte, è stato mappato a "additional.fields".
- Quando "properties.responseBody.properties.destinationPortRange" è una singola porta, viene mappata a "target.port".
- Quando "properties.responseBody.properties.destinationPortRange" è un intervallo di porte, viene mappato a "additional.fields".
- "properties.id" e "properties.status.errorCode" sono stati mappati a "security_result.detection_fields".
- "properties.isInteractive" è stato mappato a "extensions.auth.mechanism".
- Quando "properties.deviceDetail.operatingSystem" è "ANDROID", "principal.platform" viene mappato a "ANDROID".
2024-06-03
- Sono stati mappati "SUBSCRIPTIONS", "RESOURCEGROUPS", "STORAGEACCOUNTS", "PROVIDERS" e "SNAPSHOTS" da "resourceId" a "target.resource.attribute.labels".
2024-05-21
- Se "identity.authorization.evidence.principalType" è uguale a "Utente", "Gruppo", "Applicazione", mappa "principal.resource.type" a "UNSPECIFIED".
- "identity.authorization.evidence.role" è stato mappato a "principal.user.role_name".
- "identity.authorization.evidence.principalType" è stato mappato a "principal.resource.resource_subtype".
- "identity.authorization.evidence.principalId" è stato mappato a "principal.user.product_object_id".
- Sono stati mappati "identity.authorization.evidence.roleAssignmentId", "identity.authorization.evidence.roleAssignmentScope", "identity.authorization.evidence.roleDefinitionId" a "principal.resource.attribute.labels".
2024-05-03
- Quando "category" è "SignInLogs", mappa "properties.userDisplayName" a "principal.user.user_display_name".
- "properties.requestbody.properties.priority" e "properties.response.properties.priority" sono stati mappati a "security_result.detection_fields".
- "properties.requestbody.properties.protocol" è stato mappato a "network.ip_protocol".
- "properties.requestbody.properties.direction" è stato mappato a "network.direction".
- "properties.response.properties.protocol" è stato mappato a "network.ip_protocol".
- "properties.response.properties.direction" è stato mappato a "network.direction".
- "properties.response.properties.destinationPortRange" è stato mappato a "target.port".
2024-04-26
- "operationName.value" è stato mappato a "metadata.product_event_type".
- "category.value" è stato mappato a "security_result.category_details".
- "httpRequest.uri" è stato mappato a "network.http.referral_url".
- "httpRequest.method" è stato mappato a "network.http.method".
- "httpRequest.clientIpAddress" è stato mappato a "principal.ip" e "principal.asset.ip".
- "eventDataId" è stato mappato a "security_result.detection_fields".
- "httpRequest.clientRequestId" è stato mappato a "additional.fields".
2024-04-16
- È stato aggiunto il supporto per mappare "network.application_protocol" se "protocol" è noto, altrimenti "protocol" è stato mappato a "additional.fields".
2024-04-12
- "properties.requestbody.properties.allowBlobPublicAccess" è stato mappato a "security_result.detection_fields".
2024-04-10
- "resourceId" è stato mappato a "target.resource.name".
- Quando "resourceId" è presente, mappa "targetResources.displayName", "identity", "Type" e "properties.resourceDisplayName" a "target.resource.attribute.labels".
2024-03-29
- "ResourceGUID" è stato mappato a "target.resource.product_object_id".
- "Tipo" è stato mappato a "target.resource.name".
- "ClientCity" è stato mappato a "principal.location.city".
- "ClientCountryOrRegion" è stato mappato a "principal.location.country_or_region".
- "ClientIP" è stato mappato a "principal.ip" e "principal.asset.ip".
- "ClientStateOrProvince" è stato mappato a "principal.location.state".
- "ClientType" è stato mappato a "principal.resource.attribute.labels".
- "IKey" è stato mappato a "target.resource.attribute.labels".
- "_BilledSize" e "DurationMs" sono stati mappati a "additional.fields".
- "OperationId", "SDKVersion" e "ItemCount" sono stati mappati a "properties.operationId".
- "ParentId", "Properties.WebtestLocationId", "Properties.FullTestResultAvailable", "Properties.SourceId", "Properties._MS_altIds", "Properties.WebtestArmResourceName", "Properties.SyntheticMonitorId" e "Success" sono stati mappati a "security_result.detection_fields".
- "Messaggio" è stato mappato a "metadata.description".
- "Id" è stato mappato a "principal.resource.product_object_id".
- "Nome" è stato mappato a "principal.resource.name".
2024-03-25
- Quando "category" è "ServicePrincipalSignInLogs" o "NonInteractiveUserSigninLogs" o "ManagedIdentitySignInLogs", mappa "createdDateTime" a "metadata.event_timestamp".
- Sono stati mappati "properties.authenticationDetails.authenticationStepDateTime", "properties.authenticationDetails.authenticationMethod", "properties.authenticationDetails.authenticationStepResultDetail", "properties.authenticationDetails.authenticationStepRequirement", "properties.id" e "properties.resourceServicePrincipalId" a "security_result.detection_fields".
- "properties.authenticationDetails.succeeded" è stato mappato a "security_result.action_details".
2024-03-25
- Se "properties.requestbody.Properties.RoleDefinitionId" non è vuoto, imposta "security_result.detection_fields.key" su "RequestBody roleDefinitionId".
- "properties.roleDefinitionId", "properties.principalId", "properties.responseBody.properties.roleDefinitionId" e "properties.requestbody.Properties.PrincipalId" sono stati mappati a "security_result.detection_fields".
2024-03-13
- "properties.requestbody.properties.roleDefinitionId" e "properties.requestbody.properties.principalId" sono stati mappati a "security_result.detection_fields".
2024-03-05
- "resultType" è stato mappato a "security_result.action_details".
- "properties.requestbody.Properties.PrincipalId" è stato mappato a "principal.user.userid".
- Quando "resultType" non è vuoto, viene mappato "properties.status.failureReason" a "security_result.detection_fields".
- "properties.hardwareProfile.vmSize", "properties.provisioningState" e "properties.requestbody.Properties.RoleDefinitionId" sono stati mappati a "security_result.detection_fields".
2024-02-13
Correzione di bug:
- Quando "identity.UserName" è un indirizzo email, mappalo a "principal.user.email_addresses", altrimenti mappalo a "principal.user.user_display_name".
2024-02-12
- È stato aggiunto il supporto per i log JSON che vengono eliminati.
- "OperationNameValue" è stato mappato a "metadata.product_event_type".
- Sono stati mappati "properties.eventDataId", "properties.subscriptionId", "properties.resourceGroup" e "properties.resourceProviderValue" a "security_result.detection_fields".
- "Chiamante" è stato mappato a "principal.user.userid".
- "ActivityStatusValue" è stato mappato a "security_result.action".
2024-02-01
- Correzione di bug:
- Quando il campo "category" ha il valore "NonInteractiveUserSignInLogs" o "OperationName" è "Attività di accesso", modifica "metadata.event_type" da "USER_LOGOUT" a "USER_LOGIN".
- "properties.incomingTokenType" e "properties.deviceDetail.browser" sono stati mappati a "additional.fields".
- "properties.userAgent" è stato mappato a "network.http.user_agent".
- Quando il valore "properties.userAgent" non esiste, viene mappato solo "properties.deviceDetail.browser" a "network.http.user_agent".
- "user_agent_field" analizzato mappato a "network.http.parsed_user_agent".
- "properties.eventProperties.clientIPAddress" e "callerIpAddress" sono stati mappati a "principal.asset.ip".
- "hostname", "rscname" e "properties.eventProperties.compromisedHost" sono stati mappati a "principal.asset.hostname".
2024-01-07
- Correzione di bug:
- È stato aggiunto un pattern Grok per convalidare "callerIpAddress" come indirizzo IP.
- "properties.accountName" è stato mappato a "principal.user.userid".
- "uri" è stato mappato a "network.http.refferal_url".
- "properties.userAgentHeader" è stato mappato a "network.http.user_agent".
- "properties.tlsVersion" è stato mappato a "network.tls.version".
- "statusCode" è stato mappato a "network.http.response_code".
- "protocol" è stato mappato a "network.application_protocol".
- "properties.clientRequestId", "properties.etag", "properties.objectKey", "properties.responseMd5" e "resourceType" sono stati mappati a "additional.fields".
2023-10-09
- È stato aggiunto il supporto per l'analisi dei log non analizzati.
- Sono stati rinominati i seguenti campi:
- Da "OperationName" a "operationName".
- Da "CorrelationId" a "correlationId".
- Da "Categoria" a "category".
- Da "ResourceId" a "resourceId".
- Da "ResultType" a "resultType".
- "ProviderName" e "ProviderGuid" sono stati mappati a "security_result.detection_fields".
- "ResultDescription" è stato mappato a "metadata.description".
2023-09-13
Miglioramento:
- "properties.eventCategory" è stato mappato a "security_result.detection_fields".
- "opproperties.operationIderationName" è stato mappato a "security_result.detection_fields".
- "properties.eventName" è stato mappato a "security_result.summary".
- "properties.EventName" è stato mappato a "security_result.summary".
- "properties.legacyResourceType" è stato mappato a "security_result.detection_fields".
- "properties.CallerCredentialType" è stato mappato a "security_result.detection_fields".
- "properties.EventChannel" è stato mappato a "security_result.detection_fields".
- "properties.EventSource" è stato mappato a "security_result.detection_fields".
- "properties.legacyResourceId" è stato mappato a "security_result.detection_fields".
- "properties.eventProperties.User" è stato mappato a "principal.user.id" e "principal.user.email_addresses".
- "properties.Caller" è stato mappato a "principal.user.id" e "principal.user.email_addresses".
- "caller" è stato mappato a "principal.user.id" e "principal.user.email_addresses".
- "properties.IpAddress" è stato mappato a "principal.ip".
- "properties.Description_scrubbed" è stato mappato a "security_result.description".
2023-02-22
Miglioramento:
- "tenantId" è stato mappato a "metadata.product_deployment_id".
- "operationName" è stato mappato a "metadata.product_event_type".
- "category" è stato mappato a "security_result.category_details".
- "callerIpAddress" è stato mappato a "principal.ip".
- "identity" è stato mappato a "target.resource.name".
- "result" è stato mappato a "security_result.action_details".
- "properties.activityDisplayName" è stato mappato a "security_result.summary".
- "location" è stato mappato a "principal.location.name".
- "Livello" è stato mappato a "security_result.severity_details".
- "properties.initiatedBy.app.displayName" è stato mappato a "principal.application".
- "properties.targetResources.displayName" è stato mappato a "target.resource.name".
- "properties.targetResources.id" è stato mappato a "target.resource.product_object_id".
- "properties.targetResources.modifiedProperties.displayName" è stato mappato a "target.user.attribute.labels".
- "properties.additionalDetails" è stato mappato a "additional.fields".
- "properties.loggedByService" è stato mappato a "target.application".
- "properties.userId" è stato mappato a "target.user.product_object_id".
- "properties.resourceDisplayName" è stato mappato a "target.resource.name".
- "properties.location.city" è stato mappato a "principal.location.city".
- "properties.location.state" è stato mappato a "principal.location.state".
- "properties.location.countryOrRegion" è stato mappato a "principal.location.country_or_region".
- "properties.ipAddress" è stato mappato a "principal.ip".
- "properties.location.geoCoordinates.latitude" è stato mappato a "principal.location.region_latitude".
- "properties.location.geoCoordinates.longitude" è stato mappato a "principal.location.region_longitude".
- "properties.servicePrincipalId" è stato mappato a "principal.user.userid".
- "properties.servicePrincipalName" è stato mappato a "principal.user.user_display_name".
- "properties.tokenIssuerType", "properties.authenticationProcessingDetails.0.value", "properties.operationType", "properties.authenticationRequirement", "properties.deviceDetail.trustType a "additional.fields".
- "resultDescription" è stato mappato a "metadata.description".
- "properties.userDisplayName" è stato mappato a "target.user.user_display_name".
- "properties.appDisplayName" è stato mappato a "target.application".
- "properties.userType" è stato mappato a "principal.user.attribute.roles".
- "properties.status.failureReason" è stato mappato a "security_result.action_details".
- "properties.deviceDetail.operatingSystem" è stato mappato a "principal.platform_version".
- "properties.deviceDetail.displayName" è stato mappato a "principal.asset.hardware".
- "properties.deviceDetail.browser" è stato mappato a "network.http.user_agent".
- "properties.userPrincipalName" è stato mappato a "principal.user.email_addresses".
2022-11-28
Miglioramento:
- È stato mappato il campo "correlationId" a "security_result.detection_fields".
- È stato mappato il campo "livello" a "security_result.severity_details".
- È stata aggiunta la seguente mappatura per la categoria "ResourceHealth" :
- È stato mappato il campo "properties.legacyEventDataId" a "security_result.detection_fields".
- È stato mappato il campo "properties.legacyChannels" a "security_result.detection_fields".
- È stato mappato il campo "properties.legacySubscriptionId" a "security_result.detection_fields".
- È stato mappato il campo "properties.legacyResourceGroup" a "security_result.detection_fields".
- È stato mappato il campo "properties.legacyResourceProviderName" a "security_result.detection_fields".
- È stato mappato il campo "properties.eventProperties.currentHealthStatus" a "security_result.detection_fields".
- È stato mappato il campo "properties.eventProperties.previousHealthStatus" a "security_result.detection_fields".
- È stato mappato il campo "properties.eventProperties.type" a "security_result.detection_fields".
- È stato mappato il campo "properties.eventProperties.cause" a "security_result.detection_fields".
2022-09-26
Miglioramento: campi aggiunti.
- "tenantId " è stato mappato a "metadata.product_deployment_id"
2022-06-20
Miglioramento:
- È stato aggiunto il controllo condizionale per "entity_properties".
- quando "category" è uguale a "Security"
- "properties.eventProperties.clientIPAddress" è stato mappato a "principal.ip".
- "properties.eventProperties.accountSessionId" è stato mappato a "network.session_id".
- "properties.eventProperties.suspiciousProcess" è stato mappato a "target.process.file.full_path".
- "properties.eventProperties.suspiciousCommandLine" è stato mappato a "target.process.command_line".
- "properties.eventProperties.suspiciousProcessId" è stato mappato a "target.process.pid".
- "properties.eventProperties.compromisedHost" è stato mappato a "principal.hostname".
- "resultDescription" è stato mappato a "metadata.description"
- "properties.legacySubscriptionId" è stato mappato a "security_result.detection_fields".
- "properties.legacyResourceProviderName" è stato mappato a "security_result.detection_fields".
2022-05-19
Miglioramento: sono stati aggiunti e modificati più campi.
- claims, Identity, aud, tenantid, principalId, action, appidacr, iat, exp, nbf, rh, uti, ver, xms_tcdt, principalType, roleAssignmentId, appid, aio, iss, nameidentifier, roleDefinitionId, scope mapped to security_result.detection_fields
- resultSignature, resultType, hierarchy, resource_type, entity, mappati a additional.fields.
- RoleLocation mappato a location.name.
- Categoria mappata a security_result.category_details.