Raccogli i log di Microsoft IIS
Questo documento spiega come importare i log di Microsoft Internet Information Services (IIS) in Google Security Operations utilizzando l'agente Bindplane.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Un'istanza Google SecOps
- Windows Server 2016 o versioni successive con IIS installato
- Accesso amministrativo al server IIS
- Se l'esecuzione avviene dietro un proxy, assicurati che le porte del firewall siano aperte in base ai requisiti dell'agente Bindplane
Recupera le credenziali Google SecOps per l'agente Bindplane
Per autenticare l'agente Bindplane in Google SecOps, scegli uno dei seguenti metodi:
- Nuove implementazioni: utilizza l'API Chronicle (opzione 1).
- Deployment legacy: continua a utilizzare il file di autenticazione dell'acquisizione (Opzione 2) fino alla dismissione dell'API Ingestion il 20 luglio 2027.
Opzione 1: crea un account di servizio per l'API Chronicle (consigliata)
- Accedi alla consoleGoogle Cloud e seleziona il progetto Google Cloud collegato alla tua istanza Google SecOps.
- Vai a IAM e amministrazione > Service account.
- Fai clic su Crea service account.
- Fornisci i seguenti dettagli di configurazione:
- Nome service account: inserisci un nome per l'account (ad esempio
bindplane-ingest). - Descrizione del service account: inserisci una descrizione (ad esempio,
Bindplane agent log ingestion).
- Nome service account: inserisci un nome per l'account (ad esempio
- Fai clic su Crea e continua.
- Nella sezione Concedi a questo account di servizio l'accesso al progetto, fai clic su Seleziona un ruolo e seleziona Chronicle Editor.
- Fai clic su Continua e poi su Fine.
- Fai clic sul account di servizio che hai creato, quindi vai alla scheda Chiavi.
- Fai clic su Aggiungi chiave > Crea nuova chiave.
- Seleziona JSON e fai clic su Crea. Il file della chiave viene scaricato sul tuo computer.
- Salva il file della chiave come
ingestion-auth.jsonnella directory del raccoglitore Bindplane (/opt/observiq-otel-collector/ingestion-auth.jsonsu Linux oC:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.jsonsu Windows) o aggiornacreds_file_pathinconfig.yamlin modo che corrisponda al percorso in cui lo salvi. - Vai a IAM e amministrazione > Impostazioni e copia il Numero progetto. Ti servirà per la configurazione dell'esportatore.
Opzione 2: scarica il file di autenticazione dell'acquisizione (legacy)
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Agenti di raccolta.
- Scarica il file di autenticazione dell'acquisizione.
- Salva il file in modo sicuro sul sistema in cui verrà installato l'agente Bindplane.
Ottieni l'ID cliente Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Profilo.
- Copia e salva l'ID cliente dalla sezione Dettagli dell'organizzazione.
Configurare il logging esteso W3C di IIS
Devi attivare i campi W3C corretti in Gestione IIS in modo che Google SecOps possa analizzare correttamente i log e i rilevamenti funzionino in modo affidabile.
Apri IIS Manager
- Fai clic su Avvia.
- Digita
inetmgre premi Invio. - Si apre la finestra Internet Information Services (IIS) Manager.
Metodo alternativo:
- Premi tasto Windows + R.
- Digita
inetmgre premi Invio.
Vai a Configurazione del logging
- Nel riquadro Connessioni (a sinistra), espandi il nome del server.
- Per configurare il logging a livello di server (opzione consigliata):
- Fai clic sul nome del server a livello radice.
- Per configurare il logging specifico per il sito:
- Espandi Siti > fai clic sul sito specifico (ad esempio, Sito web predefinito).
- In Visualizzazione funzionalità (riquadro centrale), fai doppio clic su Logging.
Seleziona il formato di log esteso W3C
- Nella pagina Logging, nella sezione File di log:
- Nell'elenco a discesa Formato, seleziona W3C.
- Fai clic sul pulsante Seleziona campi.
Configura i campi di logging W3C
Nella finestra di dialogo Campi di logging W3C, seleziona i campi in base a UNO dei seguenti pattern:
Pattern 1: contesto completo del sito con stringa di query e byte
Attiva questi campi nell'ordine esatto:
- Date (date)
- Time (time)
- Nome servizio (s-sitename)
- Indirizzo IP del server (s-ip)
- Metodo (cs-method)
- URI Stem (cs-uri-stem)
- Query URI (cs-uri-query)
- Porta server (s-port)
- User Name (cs-username)
- Indirizzo IP client (c-ip)
- User agent (cs(User-Agent))
- Referer (cs(Referer))
- Stato del protocollo (sc-status)
- Byte inviati (sc-bytes)
- Byte ricevuti (cs-bytes)
Utilizza questo pattern quando: il formato downstream include il contesto del sito + la stringa di query e hai bisogno dei byte inviati/ricevuti, mentre la pipeline prevede le colonne "username" e "referer" (anche se i valori sono -).
Pattern 2: di base con stato secondario, stato Win32 e rendimento (nessun referrer)
Attiva questi campi nell'ordine esatto:
- Date (date)
- Time (time)
- Indirizzo IP server (s-ip)
- Metodo (cs-method)
- URI Stem (cs-uri-stem)
- Query URI (cs-uri-query)
- Porta server (s-port)
- User Name (cs-username)
- Indirizzo IP client (c-ip)
- User agent (cs(User-Agent))
- Stato del protocollo (sc-status)
- Protocol Substatus (sc-substatus)
- Stato Win32 (sc-win32-status)
- Tempo impiegato (time-taken)
Utilizza questo pattern quando: la tua pipeline non include Referer, ma hai bisogno di codici di errore e latenza dettagliati (time-taken).
Pattern 3: Basic with Substatus, Win32 Status, and Performance (with Referer)
Attiva questi campi esattamente in questo ordine:
- Date (date)
- Time (time)
- Indirizzo IP server (s-ip)
- Metodo (cs-method)
- URI Stem (cs-uri-stem)
- Query URI (cs-uri-query)
- Porta server (s-port)
- User Name (cs-username)
- Indirizzo IP client (c-ip)
- User agent (cs(User-Agent))
- Referer (cs(Referer))
- Stato del protocollo (sc-status)
- Protocol Substatus (sc-substatus)
- Stato Win32 (sc-win32-status)
- Tempo impiegato (time-taken)
Utilizza questo pattern quando: come per il Pattern 2, ma la pipeline include Referer come colonna dedicata.
Pattern 4: TLS/Protocol-Version Aware con referrer e prestazioni
Attiva questi campi esattamente in questo ordine:
- Date (date)
- Time (time)
- Indirizzo IP server (s-ip)
- Metodo (cs-method)
- URI Stem (cs-uri-stem)
- Query URI (cs-uri-query)
- Porta client (c-port)
- Nome utente (cs-username)
- Indirizzo IP client (c-ip)
- Versione del protocollo (cs-version)
- User agent (cs(User-Agent))
- Referer (cs(Referer))
- Stato del protocollo (sc-status)
- Protocol Substatus (sc-substatus)
- Stato Win32 (sc-win32-status)
- Tempo impiegato (time-taken)
Utilizza questo pattern quando: il formato downstream registra esplicitamente cs-version (ad es. HTTP/1.1) e include i tempi, e hai anche la porta client come colonna dedicata.
Pattern 5: TLS/Protocol-Version Aware con Referrer (No Performance)
Attiva questi campi esattamente in questo ordine:
- Date (date)
- Time (time)
- Indirizzo IP server (s-ip)
- Metodo (cs-method)
- URI Stem (cs-uri-stem)
- Query URI (cs-uri-query)
- Porta client (c-port)
- Nome utente (cs-username)
- Indirizzo IP client (c-ip)
- Versione del protocollo (cs-version)
- User agent (cs(User-Agent))
- Referer (cs(Referer))
- Stato del protocollo (sc-status)
- Protocol Substatus (sc-substatus)
- Stato Win32 (sc-win32-status)
Utilizza questo pattern quando: come il pattern 4, ma la pipeline non include time-taken.
Pattern 6: con cookie e referrer (nessuna prestazione, nessun byte)
Attiva questi campi nell'ordine esatto:
- Date (date)
- Time (time)
- Indirizzo IP server (s-ip)
- Metodo (cs-method)
- URI Stem (cs-uri-stem)
- Query URI (cs-uri-query)
- Porta client (c-port)
- Nome utente (cs-username)
- Indirizzo IP client (c-ip)
- User agent (cs(User-Agent))
- Cookie (cs(Cookie))
- Referer (cs(Referer))
- Stato del protocollo (sc-status)
- Protocol Substatus (sc-substatus)
- Stato Win32 (sc-win32-status)
Utilizza questo pattern quando: il formato downstream prevede sia il cookie sia il referrer come colonne dedicate.
Pattern 7: Minimal with Referer (No Cookie, No Performance, No Bytes)
Attiva questi campi nell'ordine esatto:
- Date (date)
- Time (time)
- Indirizzo IP server (s-ip)
- Metodo (cs-method)
- URI Stem (cs-uri-stem)
- Query URI (cs-uri-query)
- Porta client (c-port)
- Nome utente (cs-username)
- Indirizzo IP client (c-ip)
- User agent (cs(User-Agent))
- Referer (cs(Referer))
- Stato del protocollo (sc-status)
- Protocol Substatus (sc-substatus)
- Stato Win32 (sc-win32-status)
Utilizza questo pattern quando: il formato downstream include Referer, ma non Cookie/time/bytes.
Pattern 8: Minimal without Referer (No Cookie, No Performance, No Bytes)
Attiva questi campi nell'ordine esatto:
- Date (date)
- Time (time)
- Indirizzo IP server (s-ip)
- Metodo (cs-method)
- URI Stem (cs-uri-stem)
- Query URI (cs-uri-query)
- Porta client (c-port)
- Nome utente (cs-username)
- Indirizzo IP client (c-ip)
- User agent (cs(User-Agent))
- Stato del protocollo (sc-status)
- Protocol Substatus (sc-substatus)
- Stato Win32 (sc-win32-status)
Utilizza questo pattern quando: il formato downstream non include Referer e hai bisogno solo del contesto della richiesta di base e dei codici di stato.
NON attivare campi di più pattern. Il parser prevede una di queste configurazioni esatte.
Applica configurazione
- Fai clic su OK per chiudere la finestra di dialogo W3C Logging Fields (Campi di logging W3C).
- Verifica il percorso della directory in cui verranno scritti i log.
- Valore predefinito:
%SystemDrive%\inetpub\logs\LogFiles
- Valore predefinito:
- In Log File Rollover (Rollover file di log), seleziona Daily (Giornaliero) (consigliato per l'importazione di Google SecOps).
- Fai clic su Applica nel riquadro Azioni (a destra).
Verifica la registrazione IIS
Dopo aver configurato i campi W3C, verifica che IIS scriva correttamente i log:
- Genera traffico di test verso il tuo sito IIS aprendo una pagina web in un browser.
- Vai alla directory dei log:
C:\inetpub\logs\LogFiles\W3SVC1\- Nota:
W3SVC1corrisponde al primo sito (Sito web predefinito). Per gli altri siti, il nome della cartella saràW3SVC2,W3SVC3e così via.
- Nota:
- Apri il file di log più recente (ad esempio
u_ex251217.log) in Blocco note. - Verifica che la riga
#Fields:contenga tutti i campi che hai attivato nell'ordine esatto del pattern scelto.
Esempio per il pattern 3
Se hai configurato il Pattern 3 (Basic con sottostato, stato Win32 e prestazioni con referrer), la riga
#Fields:deve essere:#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) cs(Referer) sc-status sc-substatus sc-win32-status time-takenVoce di log di esempio:
2025-12-17 14:23:15 192.168.1.10 GET /index.html - 80 - 203.0.113.45 Mozilla/5.0+(Windows+NT+10.0) https://example.com/previous.html 200 0 0 125
Note importanti:
- I campi vuoti sono rappresentati da un trattino (
-). - L'ordine dei campi deve corrispondere esattamente all'intestazione
#Fields:. - L'analizzatore sintattico non funzionerà se i campi sono mancanti, riordinati o provengono da più pattern.
Installa l'agente Bindplane
Installa l'agente Bindplane sul tuo server Windows seguendo le istruzioni riportate di seguito.
Installazione di finestre
- Apri il prompt dei comandi o PowerShell come amministratore.
Esegui questo comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Risorse aggiuntive per l'installazione
Per ulteriori opzioni di installazione, consulta la guida all'installazione dell'agente Bindplane.
Configura l'agente Bindplane per importare i log IIS e inviarli a Google SecOps
Modifica il file di configurazione
- Individua il file
config.yaml.- Percorso predefinito:
C:\Program Files\observIQ OpenTelemetry Collector\config.yaml
- Percorso predefinito:
- Apri il file utilizzando un editor di testo (ad esempio Blocco note, VS Code o Notepad++) come amministratore.
Sostituisci l'intero contenuto con la seguente configurazione:
receivers: iis: collection_interval: 60s processors: resourcedetection: detectors: ["system"] system: hostname_sources: ["os"] normalizesums: batch: exporters: chronicle/iis: protocol: https # Region of your instance, for example us, europe, asia-southeast1 location: <LOCATION> # Project number of the Google Cloud project linked to the instance project: '<PROJECT_NUMBER>' compression: gzip endpoint: chronicle.googleapis.com creds: 'C:\SecOps\ingestion-auth.json' log_type: 'IIS' override_log_type: false raw_log_field: body customer_id: '<CUSTOMER_ID>' service: pipelines: logs/iis: receivers: - iis processors: - resourcedetection - normalizesums - batch exporters: - chronicle/iis
Aggiorna i valori di configurazione
Sostituisci i seguenti segnaposto:
creds:: percorso del file della chiave JSON del account di servizio (opzione 1) (ad esempio,C:\SecOps\ingestion-auth.json).location: sostituisci<LOCATION>con la regione della tua istanza Google SecOps (ad esempious,europeoasia-southeast1). L'esportatore aggiungechronicle.googleapis.comcome prefisso a questo valore. Per l'elenco completo, consulta Endpoint regionali.project: sostituisci<PROJECT_NUMBER>con il numero di progetto da IAM e amministrazione > Impostazioni.endpoint: mantieni l'impostazione suchronicle.googleapis.com.customer_id:: il tuo ID cliente Google SecOps effettivo dalla sezione Ottieni l'ID cliente Google SecOps.
Esportatore dell'API di importazione precedente
Se utilizzi il file di autenticazione dell'importazione dell'opzione 2, sostituisci il blocco
exporterscon il seguente. Impostacredssul percorso del file di autenticazione dell'importazione e, se la tua istanza si trova al di fuori degli Stati Uniti, sostituiscimalachiteingestion-pa.googleapis.comcon l'endpoint regionale (ad esempio,europe-malachiteingestion-pa.googleapis.com).exporters: chronicle/iis: compression: gzip endpoint: malachiteingestion-pa.googleapis.com creds: 'C:\SecOps\ingestion-auth.json' log_type: 'IIS' override_log_type: false raw_log_field: body customer_id: '<CUSTOMER_ID>'
Riavvia l'agente Bindplane per applicare le modifiche
Per riavviare l'agente Bindplane in Windows, puoi utilizzare la console Servizi o inserire il seguente comando:
net stop observiq-otel-collector && net start observiq-otel-collector
Tabella di mappatura UDM
| Campo log | mappatura UDM |
|---|---|
@timestamp |
metadata.event_timestamp |
__AntiXsrfToken |
additional.fields |
__type |
additional.fields |
_raw |
security_result.description |
_ResourceId |
target.resource.product_object_id |
_time |
metadata.event_timestamp |
_timestamp |
metadata.event_timestamp |
_version |
metadata.product_version |
AccountName |
additional.fields |
AccountType |
principal.user.attribute.roles.name |
Action |
security_result.action_details |
addr |
additional.fields |
admin_domain |
principal.administrative_domain |
agent.ephemeral_id |
additional.fields |
agent.hostname |
observer.hostname |
agent.name |
observer.hostname |
agent.type |
observer.application,observer.asset.asset_id |
agent.version |
additional.fields |
AgentDevice |
additional.fields |
AgentLogFile |
additional.fields |
AgentLogFormat |
additional.fields |
AgentLogProtocol |
additional.fields |
apparmor |
security_result.action |
ASP.NET_SessionId |
network.session_id |
auid |
additional.fields |
AUID |
additional.fields |
AuthenticationPackageName |
additional.fields |
AzureDeploymentID |
additional.fields |
beanFactory.0 |
additional.fields |
beanFactory.1.shareableResources.0 |
additional.fields |
BU |
additional.fields |
c-ip |
observer.ip,intermediary.ip |
c_ip |
observer.ip,intermediary.ip |
CalloutKey |
security_result.about.resource.attribute.labels |
CalloutName |
security_result.about.resource.attribute.labels |
capability |
security_result.detection_fields |
capname |
security_result.detection_fields |
Category |
security_result.category_details |
change_type |
additional.fields |
ChangeType |
security_result.about.resource.attribute.labels |
Channel |
security_result.about.resource.attribute.labels |
ChannelID |
security_result.about.resource.attribute.labels |
chronicle_tag |
additional.fields |
class |
security_result.detection_fields |
cloud_ray_id |
additional.fields |
comm |
principal.application |
Computer |
target.hostname,target.asset.hostname |
computername |
target.hostname,target.asset.hostname |
Conditions |
security_result.about.resource.attribute.labels |
ConfigPath |
additional.fields |
Configuration |
additional.fields |
Connection_IP |
target.ip,target.asset.ip |
content_type |
additional.fields |
cookie |
additional.fields |
count |
additional.fields |
cribl_breaker |
additional.fields |
cribl_host |
observer.hostname |
cribl_pipe (elemento dell'array) |
additional.fields |
cs(Referer) |
network.http.referral_url |
cs(User-Agent) |
network.http.user_agent,network.http.parsed_user_agent |
cs-bytes |
network.received_bytes |
cs-host |
additional.fields |
cs-method |
network.http.method |
cs-uri-query |
target.url |
cs-uri-stem |
target.url |
cs-uri-stem |
target.url |
cs-username (parte del dominio) |
principal.administrative_domain |
cs-username (parte utente) |
principal.user.userid |
cs-version |
network.application_protocol_version |
cs_bytes |
network.received_bytes |
cs_host |
additional.fields |
cs_method |
network.http.method |
cs_referer |
network.http.referral_url |
cs_username |
principal.user.userid |
csbyte |
network.received_bytes |
csBytes |
network.received_bytes |
cshost |
additional.fields |
csip |
principal.ip,principal.asset.ip |
csMethod |
network.http.method |
csmethod |
network.http.method |
csReferer |
network.http.referral_url |
csreferer |
network.http.referral_url |
csUriStem |
target.url |
csUser-Agent |
network.http.user_agent,network.http.parsed_user_agent |
csUserAgent |
network.http.user_agent,network.http.parsed_user_agent |
csuseragent |
network.http.user_agent,network.http.parsed_user_agent |
csusername |
principal.user.userid |
csversion |
network.application_protocol_version |
date |
metadata.event_timestamp |
DC |
additional.fields |
desc |
metadata.description |
description |
security_result.description |
Domain |
principal.administrative_domain |
dst_ip |
target.ip,target.asset.ip |
dst_ip2 |
target.ip,target.asset.ip |
dst_port |
target.port |
duration |
network.session_duration,additional.fields |
duration |
network.session_duration.nanos (se [duration] < 1000) |
duration |
network.session_duration.seconds (se [duration] > 1000) |
ecs.version |
additional.fields |
EnabledFieldsFlags |
additional.fields |
error_message |
security_result.description |
event.dataset |
additional.fields |
event.module |
additional.fields |
event_data.dataset |
additional.fields |
event_data.module |
additional.fields |
EventEnqueuedUtcTime |
additional.fields |
EventID |
metadata.product_log_id |
EventProcessedUtcTime |
additional.fields |
EventReceivedTime |
metadata.collected_timestamp |
EventRecordID |
principal.asset.product_object_id |
EventTime |
metadata.event_timestamp |
EventType |
metadata.product_event_type |
exe |
principal.file.full_path |
ExecutionProcessID |
principal.process.pid |
ExecutionThreadID |
principal.process.product_specific_process_id |
facility |
additional.fields |
FileOffset |
additional.fields |
fileset.name |
additional.fields |
FileUri |
observer.file.full_path |
filter_action |
security_result.action |
filter_type |
additional.fields |
FilterId |
security_result.about.resource.attribute.labels |
FilterKey |
security_result.about.resource.attribute.labels |
FilterName |
security_result.about.resource.attribute.labels |
FilterType |
security_result.about.resource.attribute.labels |
first_seen |
additional.fields |
Flags |
additional.fields |
For login events |
extensions.auth.type (= "MACHINE") |
ftp_command |
network.ftp.command |
host |
target.hostname,target.asset.hostname |
host.architecture |
target.asset.hardware.cpu_platform |
host.geo.name |
additional.fields |
host.id |
target.asset.asset_id |
host.ip |
target.ip,target.asset.ip |
host.mac |
target.mac,target.asset.mac |
host.os.build |
target.platform_patch_level |
host.os.family |
additional.fields |
host.os.kernel |
additional.fields |
host.os.name |
target.platform_version |
host.os.platform |
target.platform |
host.os.type |
additional.fields |
host.os.version |
target.platform_version |
host_hostname |
target.hostname,target.asset.hostname |
host_name |
target.hostname,target.asset.hostname |
Hostname |
target.hostname,target.asset.hostname |
hostname |
target.hostname,target.asset.hostname |
HTTP |
network.application_protocol |
http_method |
network.http.method |
http_response |
network.http.response_code |
http_status_code |
network.http.response_code |
HTTPS |
network.application_protocol |
IIS_source |
principal.resource.attribute.labels |
ImpersonationLevel |
additional.fields |
input.type |
additional.fields |
instance |
additional.fields |
Internet Information Server |
metadata.product_name |
IpAddress |
principal.ip,principal.asset.ip,observer.ip |
IpPort |
principal.port |
jndi_java_class |
additional.fields |
jndi_payload |
additional.fields |
jndiName |
additional.fields |
KeyLength |
additional.fields |
Keywords |
additional.fields |
last_seen |
additional.fields |
LayerId |
security_result.about.resource.attribute.labels |
LayerKey |
security_result.about.resource.attribute.labels |
LayerName |
security_result.about.resource.attribute.labels |
Level |
security_result.severity (INFORMATIONAL, ERROR, MEDIUM, LOW) |
LevelValue |
security_result.about.resource.attribute.labels |
LmPackageName |
additional.fields |
log.file.path |
observer.file.full_path |
log.offset |
metadata.product_log_id |
loginTimeout |
additional.fields |
LogonGuid |
security_result.about.resource.attribute.labels |
LogonProcessName |
additional.fields |
LogonType |
extensions.auth.auth_details |
logstash.collect.host |
observer.hostname |
logstash.collect.timestamp |
metadata.collected_timestamp |
logstash.ingest.timestamp |
additional.fields |
logstash.irm_environment |
additional.fields |
logstash.irm_region |
additional.fields |
logstash.irm_site |
additional.fields |
logstash.process.host |
intermediary.hostname |
logstash.process.timestamp |
additional.fields |
ManagementGroupName |
additional.fields |
message_data |
security_result.description |
MethodName |
additional.fields |
MG |
additional.fields |
Microsoft |
metadata.vendor_name |
ministry |
additional.fields |
misc |
security_result.summary |
msg |
security_result.description |
network_direction |
network.direction (IN USCITA o IN ENTRATA) |
NewValue |
additional.fields |
node |
principal.hostname,principal.asset.hostname |
ObjectInstance.__type |
additional.fields |
ObjectInstance.StartInfo.__type |
additional.fields |
ObjectInstance.StartInfo.Arguments |
additional.fields |
ObjectInstance.StartInfo.FileName |
additional.fields |
obs_app |
observer.application |
obs_host |
observer.ip |
obs_pid |
observer.process.pid |
OldValue |
additional.fields |
Opcode |
additional.fields |
OpcodeValue |
additional.fields |
operation |
security_result.detection_fields |
OS_Platform |
additional.fields |
OS_Release |
additional.fields |
OS_Timezone |
additional.fields |
OS_type |
target.platform |
OS_Version_ID |
additional.fields |
OutlookSession |
additional.fields |
PartitionId |
additional.fields |
PhysicalPath |
target.file.full_path |
pid |
principal.process.pid |
PluginVersion |
additional.fields |
prin_ip |
observer.ip |
prin_ip |
principal.ip,principal.asset.ip |
principal_ip (condizionale) |
intermediary.ip |
principal_ip (in modo condizionale) |
observer.ip |
principal_or_intermediary_ip |
intermediary.ip |
priority |
additional.fields |
process_file |
target.process.file.full_path |
process_id |
additional.fields |
ProcessID |
principal.process.pid |
ProcessName |
principal.process.file.full_path |
profile |
security_result.detection_fields |
propertyPath |
additional.fields |
ProviderGuid |
security_result.about.resource.attribute.labels |
ProviderKey |
security_result.about.resource.attribute.labels |
ProviderName |
security_result.about.resource.attribute.labels |
RecordNumber |
additional.fields |
request_url |
target.url |
res |
security_result.action |
res |
security_result.action (CONSENTI se "successo") |
response_content |
additional.fields |
Role |
additional.fields |
RoleInstance |
additional.fields |
s-computername |
target.hostname,target.asset.hostname |
s-ip |
target.ip,target.asset.ip |
s-port |
target.port |
s-sitename |
target.application |
s_sitename |
target.application |
sComputerName |
target.hostname,target.asset.hostname |
scope_id |
additional.fields |
sc-bytes |
network.sent_bytes |
sc-status |
network.http.response_code |
sc-substatus |
additional.fields |
sc-win32-status |
additional.fields |
sc_bytes |
network.sent_bytes |
sc_substatus |
additional.fields |
sc_win32_status |
additional.fields |
scbyte |
network.sent_bytes |
scBytes |
network.sent_bytes |
scStatus |
network.http.response_code |
scstatus |
network.http.response_code |
sec_desc |
security_result.description |
service.type |
additional.fields |
ses |
network.session_id |
Severity |
security_result.severity (INFORMATIONAL, ERROR, MEDIUM, LOW) |
severity |
security_result.severity (INFORMATIONAL, ERROR, MEDIUM, LOW) |
SeverityValue |
security_result.about.resource.attribute.labels |
site |
additional.fields |
sitename |
target.application |
source |
observer.file.full_path |
SourceModuleName |
observer.resource.name |
SourceModuleType |
observer.application |
SourceName |
additional.fields |
SourceSystem |
observer.application |
src_host (se Hostname) |
principal.hostname,principal.asset.hostname |
src_ip |
observer.ip,intermediary.ip |
src_port |
principal.port |
sSiteName |
target.application |
StorageAccount |
additional.fields |
streamid |
additional.fields |
SubFleetName |
additional.fields |
subj |
principal.resource.attribute.labels |
SubjectDomainName |
principal.administrative_domain |
SubjectLogonId |
principal.resource.attribute.labels |
SubjectUserName |
principal.user.userid |
SubjectUserSid |
principal.user.windows_sid |
syslog_facility |
security_result.detection_fields |
syslog_facility_code |
security_result.detection_fields |
syslog_pri |
security_result.priority_details |
syslog_severity |
security_result.severity_details |
syslog_severity_code |
security_result.detection_fields |
SyslogFacility |
security_result.about.resource.attribute.labels |
SyslogFacilityValue |
security_result.about.resource.attribute.labels |
SyslogSeverity |
security_result.about.resource.attribute.labels |
SyslogSeverityValue |
security_result.about.resource.attribute.labels |
system |
target.platform |
tags (elementi dell'array) |
additional.fields |
target_host |
target.hostname,target.asset.hostname |
targetBeanName |
additional.fields |
TargetDomainName |
target.administrative_domain |
TargetLogonId |
target.resource.attribute.labels |
TargetUserName |
target.user.userid |
TargetUserSid |
target.user.windows_sid |
task |
additional.fields |
TaskValue |
additional.fields |
TenantId |
additional.fields |
ThreadID |
additional.fields |
time |
metadata.event_timestamp |
time-taken |
additional.fields |
time-taken |
network.session_duration |
time_taken |
additional.fields |
time_taken |
network.session_duration |
TimeGenerated |
security_result.about.resource.attribute.labels |
timestamp |
metadata.event_timestamp |
total_CPU |
target_hardware.cpu_number_cores |
total_memory |
additional.fields |
transletBytecodes.0 |
additional.fields |
transletName |
additional.fields |
TransmittedServices |
additional.fields |
Type |
additional.fields |
type |
metadata.product_event_type |
UID |
principal.user.user_display_name |
uid |
principal.user.userid |
unit |
target.application |
uristem |
target.url |
user_agent |
network.http.user_agent,network.http.parsed_user_agent |
user_agent (se l'analisi JSON non va a buon fine) |
additional.fields |
UserID |
principal.user.windows_sid |
UserName |
target.user.userid |
UserSid |
principal.user.windows_sid |
Version |
metadata.product_version |
version |
metadata.product_version |
Weight |
security_result.about.resource.attribute.labels |
WorkstationName |
additional.fields |
X-BackEndCookie |
additional.fields |
xff_ip |
principal.ip,principal.asset.ip |
xforwardedfor |
principal.ip,principal.asset.ip (per il primo indirizzo IP),intermediary.ip (per il resto degli indirizzi IP) |
Riferimento per le differenze tra le mappature UDM
Il 16 luglio 2026, Google SecOps ha rilasciato una nuova versione del parser Microsoft Internet Information Services (IIS), che include modifiche significative al mapping dei campi di log di Microsoft Internet Information Services ai campi UDM.
La tabella seguente elenca le differenze di mappatura per i campi dei log del servizio di Microsoft Internet Information Services in UDM esposti prima del 16 luglio 2026 e successivamente (elencati rispettivamente nelle colonne Mappatura precedente e Mappatura attuale):
| Campo log | Mappatura precedente | Mappatura attuale |
|---|---|---|
AccountType |
principal.user.role_name |
principal.user.attribute.roles[].name |
Action |
security_result.about.resource.attribute.labels |
securtiy_result.action_details |
agent.type |
principal.application |
observer.application |
agent.type + host_id |
observer.asset_id |
target.asset.asset_id => host_id: %{host_id},observer.asset.asset_id => agent.type + agent.id ,(Nella mappatura precedente, i campi di log agent.type e host_id venivano uniti e mappati a observer.assetid. Nella mappatura attuale, host_id corrisponde a target.asset.asset_id e agent.type corrisponde a observer.asset.asset_id.) |
app_name |
principal.application |
target.hostname |
c_ip |
principal.ip,principal.asset.ip |
Se xff_ip è presente: intermediary.ip |
comm |
target.process.command_line |
principal.application |
cookie |
additional.fields |
|
cribl_breaker |
target.resource.attribute.labels |
additional.fields |
cs(User-Agent) |
network.http.user_agent |
Il parser ora include un controllo condizionale per evitare la mappatura dei valori "-", che rimuove la mappatura network.http.user_agent quando cs(User-Agent) ha solo "-". |
cs-uri-query |
I campi di dati sono stati estratti e mappati singolarmente. | Concatenato con cs-uri-stem e mappato a target.url. Sono state rimosse le mappature estratte singolarmente per conservare il significato complessivo dei dati URL. |
cs-version |
network.tls.version |
network.application_protocol,network.application_protocol_version |
cs_version |
network.tls.version |
network.application_protocol,network.application_protocol_version |
csversion |
network.tls.version |
network.application_protocol,network.application_protocol_version |
Domain |
principal.user.userid |
principal.administrative_domain |
ecs.version |
principal.asset.attribute.labels |
additional.fields |
ftp_command |
principal.application |
network.ftp.command |
host |
principal.hostname,principal.asset.hostname |
target.hostname,target.asset.hostname,observer.hostname (il server web di destinazione in assenza di un campo relativo al nome del computer. In caso contrario, il campo funge da identificatore della macchina osservatore.) |
host.architecture |
principal.asset.hardware.cpu_platform |
target.asset.hardware.cpu_platform |
host.mac |
principal.mac |
target.mac |
host.os.build |
additional.fields |
target.platform_patch_level |
host.os.kernel |
principal.platform_patch_level |
additional.fields |
host.os.platform |
principal.platform |
target.platform |
intermediary_device_name |
intermediary.hostname,observer.hostname(Nella mappatura precedente, l'analizzatore sintattico considerava i dati relativi al server come due campi. Il parser ora accetta un singolo campo e mappa i dati relativi al server ai dettagli di destinazione pertinenti.) |
target.hostname |
log.file.path |
target.file.full_path |
observer.file.full_path |
LogonType |
additional.fields |
extensions.auth.auth_details |
name |
target.resource.name,additional.fields(Nella mappatura precedente, name è stato estratto da un pattern e mappato in modo errato.) |
target.application |
observer_devicename |
intermediary.hostname,observer.hostname(Nella mappatura precedente, il parser estraeva observer_devicename da un pattern e mappava in modo errato i dati relativi al server come due campi. Il parser ora accetta un singolo campo e mappa i dati relativi al server nei dettagli di destinazione pertinenti.) |
target.hostname |
OS_type |
principal.asset.platform_software.platform |
target.platform |
s-sitename |
target.resource.name,additional.fields |
target.application |
s_port (estratto dai pattern aggiornati) |
principal.port |
target.port |
s_sitename |
target.resource.name,additional.fields |
target.application |
sitename |
target.resource.name,additional.fields |
target.application |
source |
principal.resource.attribute.labels |
observer.file.full_path |
SourceName |
security_result.about.resource.attribute.labels |
additional.fields |
SourceSystem |
security_result.detection_fields |
observer.application |
sSiteName |
target.resource.name,additional.fields |
target.application |
SubjectUserName |
principal.user.userid,principal.hostname |
principal.user.userid |
tags |
security_result.rule_name |
additional.fields |
UID |
target.user.userid |
principal.user.user_display_name |
UserSid |
target.user.windows_sid |
principal.user.windows_sid |
xforwardedfor |
principal.ip,target.ip,intermediary.ip(in diversi casi) |
principal.ip (il primo indirizzo IP),intermediary.ip (tutti gli altri indirizzi IP) |
Dettagli dei log IIS incapsulati in _raw o message |
security_result.description |
Viene rimosso se il formato viene analizzato dal filtro interno. |
| Righe di log di richiesta-risposta del server web da IIS che descrivono in dettaglio la transazione HTTP, ovvero una richiesta GET che genera un reindirizzamento, non un risultato di autenticazione. | metadata.event_type = USER_LOGIN |
metadata.event_type = NETWORK_HTTP |
| N/D | network.http.parsed_user_agent(Nella mappatura precedente, il parser ha mappato in modo errato un campo del log allo user agent. Nella mappatura corrente, il parser mappa correttamente un campo adatto a network.http.parsed_user_agent.) |
|
| N/D | principal.port |
network.http.response_code (nella mappatura precedente, la mappatura non era corretta. Nella mappatura corrente, l'analizzatore mappa correttamente un campo adatto a network.http.response_code.) |
Log delle modifiche
Visualizza il log delle modifiche per questo parser
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.