Hola Juan Luis Becerril Franco,
Gracias por tu publicación en Microsoft Q&A.
Puede filtrar los eventos 4624 que se registran por defecto en el registro de seguridad de su DC y, a continuación, analizar la propiedad «Message» de los eventos para comprobar los campos Nombre de cuenta y Dirección de red de origen.
$xmlQuery = @'
<QueryList>
<Query Id="0" Path="Security">
<Select Path="Security">*[System[(EventID=4624) and TimeCreated[timediff(@SystemTime) <= 3600000]]]</Select>
</Query>
</QueryList>
'@
$results=@()
Get-WinEvent -FilterXML $xmlQuery | Where-Object { $_.Message -notmatch '(?<=Account Name:\s+)\w+.+\$'} | ForEach-Object {
$_.Message -match '(?<=Account Name:\s+)\w+.+' | Out-Null
$account = [string]$matches.Values
$_.Message -match '(?<=Source Network Address:\s+)\w+.+' | Out-Null
$address = [string]$matches.Values
$results += [PSCustomObject]@{
"Account Name" = $account
"IP Address" = $address
}
}
$results | Format-List
Este script comprueba los inicios de sesión en 3600000 milisegundos (una hora) y puede modificarlo usted mismo.
Saludos cordiales, Ian Xue
Si la respuesta es útil, haga clic en «Aceptar respuesta» y vote por ella.