windows - Extracting Event Security Logs i VBScript returnerer ingen værdier

Indlæg af Hanne Mølgaard Plasc

Problem



Nedenfor er en af ​​de kode, jeg forsøger at bruge til at udtrække oplysninger fra Windows Event Log Files:


Set objWMIService = GetObject("winmgmts:" \_
    & "{impersonationLevel=impersonate,(Security)}!\" & "." & "
ootcimv2")
Set colEvents = objWMIService.ExecQuery ("Select * from Win32\_NTLogEvent where LogFile='Application'")
WScript.Echo "Application Log Count:" & colEvents.count
Set colEvents = objWMIService.ExecQuery ("Select * from Win32\_NTLogEvent where LogFile='System'")
WScript.Echo "System Log Count:" & colEvents.count
Set colEvents = objWMIService.ExecQuery ("Select * from Win32\_NTLogEvent where LogFile='Security'")
WScript.Echo "Security Log Count:" & colEvents.count


Mit problem er, at dette kun kan få adgang til logfilerne 'Application' og 'System' og ikke 'Security' logfilen. Selvom jeg bruger dette sæt koder:


Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate,(Security)}!\" & "." & "
ootcimv2")
Set colLogFiles = objWMIService.ExecQuery("Select * from Win32\_NTEventLogFile")
For Each objLogFile in colLogFiles
    Wscript.Echo objLogFile.name
Next

Output:

C:WindowsSystem32WinevtLogsApplication.evtx
C:WindowsSystem32WinevtLogsHardwareEvents.evtx
C:WindowsSystem32WinevtLogsInternet Explorer.evtx
C:WindowsSystem32WinevtLogsKey Management Service.evtx
C:WindowsSystem32WinevtLogsLenovo-Customer Feedback.evtx
C:WindowsSystem32WinevtLogsOAlerts.evtx
C:WindowsSystem32WinevtLogsPreEmptive.evtx
C:WindowsSystem32WinevtLogsReason.evtx
C:WindowsSystem32WinevtLogsSystem.evtx
C:WindowsSystem32WinevtLogsWindows PowerShell.evtx


Sikkerhedsfilen er stadig ikke inkluderet. Jeg bruger en Windows 10-maskine. Jeg har prøvet enhver anden kode ved hjælp af WMI, men kan stadig ikke få adgang til sikkerhedslogfilen. Min sikkerhedsbegivenhed er tilgængelig via Event Viewer og har tusindvis af poster.

Bedste reference