Je dois exporter le résultat dans un fichier Excel basé sur une colonne ou un fichier CSV (Comma Separated File) pour pouvoir traiter le résultat dans SQL Server 2008 R2.Audit des comptes locaux statut, nom, nom complet, appartenance au groupe et description
Je suis dans le besoin d'obtenir tous les noms de compte d'utilisateur local, les noms complets, l'appartenance à un groupe et leur description.
Je suis googler ce calme un peu et a trouvé que je pouvais obtenir tout mais le statut d'une manière en utilisant ADSI, tel que présenté dans le script modifié suivant:
clear
Get-Content "C:\scripts\Servers.txt" | ForEach-Object {
$Comp = $_
if (test-connection -computername $Comp -count 1 -quiet) {
([ADSI]"WinNT://$comp").Children | ? {$_.SchemaClassName -eq 'user'} | % {
$groups = $_.Groups() | % {$_.GetType().InvokeMember("Name", 'GetProperty', $null, $_, $null)}
$_ | Select @{n='Användarnamn:';e={$_.Name}},
@{n='Fullständigt Namn:';e={$_.FullName}},
@{n='Senast Använt:';e={$_.LastLogin}},
@{n='Tillhör grupp(er):';e={$groups -join ';'}},
@{n='Beskrivning:';e={$_.Description}}
}
} else {
Write-Warning "Server '$Comp' is Unreachable hence Could not fetch data"
}
} | Export-Csv -NoTypeInformation -Encoding UTF8 -Delimiter ";" -Path "C:\scripts\LocalUsers.csv"
[Source]
Je suis conscient que ce script est construit pour interroger plusieurs serveurs dans le document servers.txt
, mais pour l'instant, j'ai seulement "localhost" entré là-dedans. Cependant, je le garde comme ceci en cas de besoin dans le futur. Cependant, quand il est arrivé à la valeur ADSI d'obtenir le statut de compte "désactivé" ou "actif", je frappe un mur. Il semble produire la valeur d'une manière qui me surprend un peu. Cependant, après avoir recherché sur google et découvert qu'il peut ou ne peut pas obtenir cela en convertissant bitwise-quelque chose, j'ai commencé à regarder la commande dans PowerShell pour combiner la valeur "désactivée" avec la commande ADSI ci-dessus , du script ci-dessous.
Get-WmiObject -Class Win32_UserAccount -Filter "LocalAccount='True'" |
Select Name, FullName, Disabled, Lockout, PasswordRequired, PasswordChangeable |
Export-Csv -NoTypeInformation -Encoding UTF8 -Delimiter "," -Path "C:\scripts\AccountDisabled.csv"
Cependant, je ne suis pas sûr de la façon de combiner le résultat (ou résoudre la valeur de conversion ADSI) afin qu'il soit dans le même fichier Excel en colonnes ou fichier CSV.
Merci ... ça l'a résolu pour moi et j'ai maintenant terminé le script pour pouvoir obtenir toutes les infos nécessaires. –