Voici une comparaison entre les procédures d'identification des utilisateurs connectés à un ordinateur distant à l'aide de Windows PowerShell et d'ADAudit Plus :
Import-Module ActiveDirectory
Get-RDUserSession -ConnectionBroker connection-broker-name
{
$dcs = Get-ADDomainController -Filter {Name -like "*"}
$users = Get-ADUser -LDAPFilter "(&(objectCategory=person)(objectClass=user))"
$time = 0
$exportFilePath = "c:\scripts\lastLogon.csv"
$columns = "name,username,datetime"
Out-File -filepath $exportFilePath -force -InputObject $columns
foreach($user in $users)
{
foreach($dc in $dcs)
{
$hostname = $dc.HostName
$currentUser = Get-ADUser $user.SamAccountName | Get-ADObject -Server $hostname -Properties lastLogon
if($currentUser.LastLogon -gt $time)
{
$time = $currentUser.LastLogon
}
}
if($time -eq 0){
$row = $user.Name+","+$user.SamAccountName+",Never"
}
else {
$dt = [DateTime]::FromFileTime($time)
$row = $user.Name+","+$user.SamAccountName+","+$dt
}
Out-File -filepath $exportFilePath -append -noclobber -InputObject $row
$time = 0
}
}
Voici les limites de l'obtention de chaque utilisateur connecté à des ordinateurs distants à l'aide d'outils natifs comme Windows PowerShell :
ADAudit Plus analyse automatiquement tous les DC du domaine afin de récupérer les informations sur les utilisateurs actuellement connectés à distance à un ordinateur, de générer le rapport et de le présenter dans une interface utilisateur simple et intuitive.
Connexion-déconnexion
Blocage des comptes
Journaux d'événements Windows
Audit des serveurs de fichiers
Audit de l'Active Directory
Azure AD
Audit du serveur
Démarrage et arrêt des ordinateurs