Podemos usar el cmdlet de
Active Directory de PowerShell Get-ADUser para consultar los usuarios
del AD
que nunca han ingresado al menos una vez al comprobar el valor del
atributo lastlogontimestamp.
El siguiente ejemplo muestra los usuarios que no han hecho logon
Get-ADUser -Filter {(lastlogontimestamp -notlike "*")} | Select Name,DistinguishedNameEl siguiente ejemplo muestra los usuarios que no han hecho logon, pero filtrando que sean usuarios habilitados.
Get-ADUser -Filter {(lastlogontimestamp -notlike "*") -and (enabled -eq $true)} | Select Name,DistinguishedNameEl siguiente ejemplo muestra los usuarios que fueron creados en los últimos 30 días y que no han hecho logon.
$days = 30Este último ejemplo nos exporta la lista de usuarios a un archivo CSV
$createdtime = (Get-Date).Adddays(-($days))
Get-ADUser -Filter {(lastlogontimestamp -notlike "*") -and (enabled -eq $true) -and (whencreated -lt $createdtime)} | Select Name,DistinguishedName
$createdtime = (Get-Date).Adddays(-(30))
Get-ADUser -Filter {(lastlogontimestamp -notlike "*") -and (enabled -eq $true) -and (whencreated -lt $createdtime)} | Select Name,DistinguishedName | Export-CSV "C:\\NeverLoggedOnUsers.csv" -NoTypeInformation -Encoding UTF8
0 on: "Cómo buscar usuarios de AD que no han hecho logon con PowerShell"