Collecter les journaux Microsoft IIS
Ce document explique comment ingérer des journaux Microsoft Internet Information Services (IIS) dans Google Security Operations à l'aide de l'agent Bindplane.
Avant de commencer
Assurez-vous de remplir les conditions suivantes :
- Une instance Google SecOps
- Windows Server 2016 ou version ultérieure avec IIS installé
- Accès administrateur au serveur IIS
- Si vous exécutez l'agent derrière un proxy, assurez-vous que les ports de pare-feu sont ouverts conformément aux exigences de l'agent Bindplane.
Obtenir le fichier d'authentification d'ingestion Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres SIEM > Agents de collecte.
- Téléchargez le fichier d'authentification d'ingestion.
- Enregistrez le fichier de manière sécurisée sur le système sur lequel l'agent Bindplane sera installé. Exemple :
C:\SecOps\ingestion-auth.json.
Obtenir l'ID client Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres SIEM > Profil.
- Copiez et enregistrez le numéro client dans la section Informations sur l'organisation.
Configurer la journalisation étendue W3C IIS
Vous devez activer les champs W3C appropriés dans le Gestionnaire IIS pour que Google SecOps puisse analyser correctement vos journaux et que les détections fonctionnent de manière fiable.
Ouvrir le Gestionnaire IIS
- Cliquez sur Démarrer.
- Saisissez
inetmgret appuyez sur Entrée. - La fenêtre Internet Information Services (IIS) Manager s'ouvre.
Autre méthode :
- Appuyez sur Touche Windows+R.
- Saisissez
inetmgret appuyez sur Entrée.
Accéder à la configuration de la journalisation
- Dans le volet Connexions (à gauche), développez le nom de votre serveur.
- Pour configurer la journalisation à l'échelle du serveur (recommandé) :
- Cliquez sur le nom du serveur au niveau racine.
- Pour configurer la journalisation spécifique à un site :
- Développez Sites, puis cliquez sur le site spécifique (par exemple, Site Web par défaut).
- Dans la vue des fonctionnalités (volet central), double-cliquez sur Journalisation.
Sélectionnez "Format de journal étendu W3C".
- Sur la page Logging, dans la section Fichier journal :
- Dans la liste déroulante Format, sélectionnez W3C.
- Cliquez sur le bouton Sélectionner des champs.
Configurer les champs de journalisation W3C
Dans la boîte de dialogue Champs de journalisation W3C, sélectionnez les champs selon L'UN des modèles suivants :
Modèle 1 : Contexte complet du site avec chaîne de requête et octets
Activez ces champs dans l'ordre exact suivant :
- Date (date)
- Heure (heure)
- Nom du service (s-sitename)
- Adresse IP du serveur (s-ip)
- Méthode (cs-method)
- Radical d'URI (cs-uri-stem)
- Requête URI (cs-uri-query)
- Port du serveur (s-port)
- Nom d'utilisateur (cs-username)
- Adresse IP du client (c-ip)
- User-Agent (cs(User-Agent))
- URL de provenance (cs(Referer))
- État du protocole (sc-status)
- Octets envoyés (sc-bytes)
- Octets reçus (cs-bytes)
Utilisez ce modèle lorsque : votre format en aval inclut le contexte du site et la chaîne de requête, et vous avez besoin des octets envoyés/reçus. Votre pipeline attend les colonnes "username" (nom d'utilisateur) et "referer" (URL de provenance), même si les valeurs sont -.
Schéma 2 : de base avec sous-état, état Win32 et performances (sans referrer)
Activez ces champs dans l'ordre exact suivant :
- Date (date)
- Heure (heure)
- Adresse IP du serveur (s-ip)
- Méthode (cs-method)
- Radical d'URI (cs-uri-stem)
- Requête URI (cs-uri-query)
- Port du serveur (s-port)
- Nom d'utilisateur (cs-username)
- Adresse IP du client (c-ip)
- User-Agent (cs(User-Agent))
- État du protocole (sc-status)
- Sous-état du protocole (sc-substatus)
- État Win32 (sc-win32-status)
- Temps passé (time-taken)
Utilisez ce modèle lorsque votre pipeline n'inclut pas de Referer, mais que vous avez besoin de codes d'erreur et de latence détaillés (time-taken).
Schéma 3 : de base avec sous-état, état Win32 et performances (avec le champ "Referer")
Activez ces champs dans l'ordre exact suivant :
- Date (date)
- Heure (heure)
- Adresse IP du serveur (s-ip)
- Méthode (cs-method)
- Radical d'URI (cs-uri-stem)
- Requête URI (cs-uri-query)
- Port du serveur (s-port)
- Nom d'utilisateur (cs-username)
- Adresse IP du client (c-ip)
- User-Agent (cs(User-Agent))
- URL de provenance (cs(Referer))
- État du protocole (sc-status)
- Sous-état du protocole (sc-substatus)
- État Win32 (sc-win32-status)
- Temps passé (time-taken)
Utilisez ce modèle lorsque : comme pour le modèle 2, mais votre pipeline inclut "URL de provenance" en tant que colonne dédiée.
Modèle 4 : Compatibilité avec TLS/la version du protocole, avec le referrer et les performances
Activez ces champs dans l'ordre exact suivant :
- Date (date)
- Heure (heure)
- Adresse IP du serveur (s-ip)
- Méthode (cs-method)
- Radical d'URI (cs-uri-stem)
- Requête URI (cs-uri-query)
- Port client (c-port)
- Nom d'utilisateur (cs-username)
- Adresse IP du client (c-ip)
- Version du protocole (cs-version)
- User-Agent (cs(User-Agent))
- URL de provenance (cs(Referer))
- État du protocole (sc-status)
- Sous-état du protocole (sc-substatus)
- État Win32 (sc-win32-status)
- Temps passé (time-taken)
Utilisez ce modèle lorsque votre format en aval enregistre explicitement cs-version (par exemple, HTTP/1.1) et inclut le timing, et que vous disposez également d'une colonne dédiée au port client.
Modèle 5 : Connaissance de la version TLS/du protocole avec le referrer (sans performances)
Activez ces champs dans l'ordre exact suivant :
- Date (date)
- Heure (heure)
- Adresse IP du serveur (s-ip)
- Méthode (cs-method)
- Radical d'URI (cs-uri-stem)
- Requête URI (cs-uri-query)
- Port client (c-port)
- Nom d'utilisateur (cs-username)
- Adresse IP du client (c-ip)
- Version du protocole (cs-version)
- User-Agent (cs(User-Agent))
- URL de provenance (cs(Referer))
- État du protocole (sc-status)
- Sous-état du protocole (sc-substatus)
- État Win32 (sc-win32-status)
Utilisez ce modèle lorsque : comme pour le modèle 4, mais votre pipeline n'inclut pas time-taken.
Schéma 6 : Avec cookie et referrer (aucune performance, aucun octet)
Activez ces champs dans l'ordre exact suivant :
- Date (date)
- Heure (heure)
- Adresse IP du serveur (s-ip)
- Méthode (cs-method)
- Radical d'URI (cs-uri-stem)
- Requête URI (cs-uri-query)
- Port client (c-port)
- Nom d'utilisateur (cs-username)
- Adresse IP du client (c-ip)
- User-Agent (cs(User-Agent))
- Cookie (cs(Cookie))
- URL de provenance (cs(Referer))
- État du protocole (sc-status)
- Sous-état du protocole (sc-substatus)
- État Win32 (sc-win32-status)
Utilisez ce modèle lorsque votre format en aval attend à la fois le cookie et le referrer sous forme de colonnes dédiées.
Modèle 7 : Minimal avec référent (sans cookie, sans performances, sans octets)
Activez ces champs dans l'ordre exact suivant :
- Date (date)
- Heure (heure)
- Adresse IP du serveur (s-ip)
- Méthode (cs-method)
- Radical d'URI (cs-uri-stem)
- Requête URI (cs-uri-query)
- Port client (c-port)
- Nom d'utilisateur (cs-username)
- Adresse IP du client (c-ip)
- User-Agent (cs(User-Agent))
- URL de provenance (cs(Referer))
- État du protocole (sc-status)
- Sous-état du protocole (sc-substatus)
- État Win32 (sc-win32-status)
Utilisez ce modèle lorsque votre format en aval inclut le champ "Referer", mais pas les champs "Cookie", "time" ni "bytes".
Modèle 8 : Minimal sans Referer (pas de cookie, pas de performances, pas d'octets)
Activez ces champs dans l'ordre exact suivant :
- Date (date)
- Heure (heure)
- Adresse IP du serveur (s-ip)
- Méthode (cs-method)
- Radical d'URI (cs-uri-stem)
- Requête URI (cs-uri-query)
- Port client (c-port)
- Nom d'utilisateur (cs-username)
- Adresse IP du client (c-ip)
- User-Agent (cs(User-Agent))
- État du protocole (sc-status)
- Sous-état du protocole (sc-substatus)
- État Win32 (sc-win32-status)
Utilisez ce modèle lorsque votre format en aval n'inclut pas de référenceur et que vous n'avez besoin que du contexte de requête principal et des codes d'état.
N'activez PAS les champs de plusieurs modèles. L'analyseur attend l'une de ces configurations exactes.
Appliquer la configuration
- Cliquez sur OK pour fermer la boîte de dialogue Champs de journalisation W3C.
- Vérifiez le chemin d'accès au répertoire dans lequel les journaux seront écrits.
- Valeur par défaut :
%SystemDrive%\inetpub\logs\LogFiles
- Valeur par défaut :
- Sous Rotation des fichiers journaux, sélectionnez Tous les jours (recommandé pour l'ingestion Google SecOps).
- Cliquez sur Appliquer dans le volet Actions (à droite).
Vérifier la journalisation IIS
Après avoir configuré les champs W3C, vérifiez qu'IIS écrit correctement les journaux :
- Générez du trafic de test vers votre site IIS en ouvrant une page Web dans un navigateur.
- Accédez au répertoire des journaux :
C:\inetpub\logs\LogFiles\W3SVC1\- Remarque :
W3SVC1correspond au premier site (site Web par défaut). Pour les autres sites, le nom du dossier seraW3SVC2,W3SVC3, etc.
- Remarque :
- Ouvrez le fichier journal le plus récent (par exemple,
u_ex251217.log) dans le Bloc-notes. - Vérifiez que la ligne
#Fields:contient tous les champs que vous avez activés, dans l'ordre exact du modèle choisi.
Exemple pour le modèle 3
Si vous avez configuré le schéma 3 (de base avec sous-état, état Win32 et performances avec le champ "referrer"), la ligne
#Fields:doit se présenter comme suit :#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-takenExemple d'entrée de journal :
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
Remarques importantes :
- Les champs vides sont représentés par un tiret (
-). - L'ordre des champs doit correspondre exactement à l'en-tête
#Fields:. - L'analyseur échouera si des champs sont manquants, réorganisés ou proviennent de plusieurs modèles.
Installer l'agent Bindplane
Installez l'agent Bindplane sur votre serveur Windows en suivant les instructions ci-dessous.
Installation de Windows
- Ouvrez l'invite de commandes ou PowerShell en tant qu'administrateur.
Exécutez la commande suivante :
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Autres ressources d'installation
Pour obtenir d'autres options d'installation, consultez le guide d'installation de l'agent Bindplane.
Configurer l'agent Bindplane pour ingérer les journaux IIS et les envoyer à Google SecOps
Modifiez le fichier de configuration
- Trouvez le fichier
config.yaml.- Chemin par défaut :
C:\Program Files\observIQ OpenTelemetry Collector\config.yaml
- Chemin par défaut :
- Ouvrez le fichier à l'aide d'un éditeur de texte (par exemple, Bloc-notes, VS Code ou Notepad++) en tant qu'administrateur.
Remplacez l'intégralité du contenu par la configuration suivante :
receivers: iis: collection_interval: 60s processors: resourcedetection: detectors: ["system"] system: hostname_sources: ["os"] normalizesums: batch: exporters: chronicle/iis: 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>' compression: gzip service: pipelines: logs/iis: receivers: - iis processors: - resourcedetection - normalizesums - batch exporters: - chronicle/iis
Mettre à jour les valeurs de configuration
Remplacez les espaces réservés suivants :
creds:: chemin d'accès à votre fichier d'authentification pour l'ingestion (par exemple,C:\SecOps\ingestion-auth.json).endpoint:: votre point de terminaison régional.customer_id:: votre ID client Google SecOps réel, tel qu'indiqué dans la section Obtenir l'ID client Google SecOps.
Redémarrez l'agent Bindplane pour appliquer les modifications.
Pour redémarrer l'agent Bindplane dans Windows, vous pouvez utiliser la console Services ou saisir la commande suivante :
net stop observiq-otel-collector && net start observiq-otel-collector
Table de mappage UDM
| Champ du journal | Mappage 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 (élément de tableau) |
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 (partie du domaine) |
principal.administrative_domain |
cs-username (partie utilisateur) |
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 (si [duration] < 1 000) |
duration |
network.session_duration.seconds (if [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 (SORTANT ou ENTRANT) |
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 (conditionnellement) |
intermediary.ip |
principal_ip (conditionnellement) |
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 (AUTORISER si "success") |
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 (si 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 (éléments du tableau) |
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 (si l'analyse JSON échoue) |
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 (pour la première adresse IP),intermediary.ip (pour les autres adresses IP) |
Référence delta du mappage UDM
Le 16 juillet 2026, Google SecOps a publié une nouvelle version du parser Microsoft Internet Information Services (IIS), qui inclut des modifications importantes du mappage des champs de journaux Microsoft Internet Information Services vers les champs UDM.
Le tableau suivant liste le delta de mappage pour les champs de journaux Microsoft Internet Information Services vers UDM exposés avant le 16 juillet 2026 et après (listés respectivement dans les colonnes Ancien mappage et Mappage actuel) :
| Champ du journal | Ancien mappage | Mappage actuel |
|---|---|---|
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 ,(Dans l'ancienne cartographie, les champs de journaux agent.type et host_id ont été fusionnés et mappés sur observer.assetid. Dans le mappage actuel, host_id correspond à target.asset.asset_id et agent.type correspond à observer.asset.asset_id.) |
app_name |
principal.application |
target.hostname |
c_ip |
principal.ip,principal.asset.ip |
Si xff_ip est présent : 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 |
L'analyseur inclut désormais une vérification conditionnelle pour éviter le mappage des valeurs "-". Cela supprime le mappage network.http.user_agent lorsque cs(User-Agent) est défini sur "-". |
cs-uri-query |
Les champs de données ont été extraits et mappés individuellement. | Concaténé avec cs-uri-stem et mappé sur target.url. Suppression des mappages extraits individuellement pour conserver la signification globale des données d'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 (serveur Web cible en l'absence de champ lié au nom de l'ordinateur). Sinon, le champ sert d'identifiant pour la machine observatrice.) |
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(Dans l'ancien mappage, l'analyseur syntaxique considérait les données liées au serveur comme deux champs. Le parseur accepte désormais un seul champ et mappe les données liées au serveur aux détails de la cible correspondants.) |
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(Dans l'ancien mappage, name a été extrait d'un modèle et mal mappé.) |
target.application |
observer_devicename |
intermediary.hostname,observer.hostname(Dans l'ancien mappage, l'analyseur syntaxique extrayait observer_devicename d'un modèle et mappait de manière incorrecte les données liées au serveur en tant que deux champs. Le parseur accepte désormais un seul champ et mappe les données liées au serveur aux détails de la cible correspondants.) |
target.hostname |
OS_type |
principal.asset.platform_software.platform |
target.platform |
s-sitename |
target.resource.name,additional.fields |
target.application |
s_port (extrait des modèles mis à jour) |
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(dans différents cas) |
principal.ip (première adresse IP),intermediary.ip (toutes les autres adresses IP) |
Détails du journal IIS encapsulés dans _raw ou message |
security_result.description |
Supprimé si le format est analysé par le filtre interne. |
| Lignes de journal de demande/réponse du serveur Web provenant d'IIS qui détaillent la transaction HTTP, c'est-à-dire une requête GET entraînant une redirection, et non un résultat d'authentification. | metadata.event_type = USER_LOGIN |
metadata.event_type = NETWORK_HTTP |
| N/A | network.http.parsed_user_agent(Dans l'ancien mappage, l'analyseur a mappé de manière incorrecte un champ de journal à l'agent utilisateur. Dans le mappage actuel, l'analyseur mappe correctement un champ approprié à network.http.parsed_user_agent.) |
|
| N/A | principal.port |
network.http.response_code (Dans l'ancien mappage, le mappage était incorrect. Dans le mappage actuel, l'analyseur mappe correctement un champ approprié à network.http.response_code.) |
Journal des modifications
Afficher le journal des modifications pour ce parseur
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.