Moin zusammen, ich habe folgendes vor: Ich möchte eine Liste von Usern aus dem AD auslesen die in einer bestimmten OU liegen bekomme aber immer einen Fehler ausgegeben. Mein Script sieht wie folgt aus:
#AD Modul importieren
Import-Module ActiveDirectory
#Variablen setzen
$Properties=@(“samaccountname”,"mail","PasswordExpired","LastLogonDate")
#Userobjekte in das Array $Users einlesen
$Users = @(Get-ADUser -Filter '*' -SearchBase "OU=Ebene1/Ebene2,DC=OOOO,DC=OOOO,DC=DE" -Properties $Properties)
#Anlage der DataTabelle mit Spalten für jede Property in Properties
$DataTable=New-Object System.Data.DataTable("ExportUsers")
$Properties | foreach {
$Column = New-Object System.Data.DataColumn($_)
$DataTable.Columns.Add($Column)
}
#Befüllen der DataTable mit Daten
foreach ($User in $Users){
$PropertiesInRow =@()
foreach($Property in $Properties) {
$OFS=$myOFS
$PropertiesInRow += [String]$($User.$($Property.ToString()))
$OFS="+"
}#foreach($Property in $Properties)
$DataTable.Rows.Add($PropertiesInRow) |Out-Null
}#foreach ($User in $Users)
#Ausgabe
$DataTable | Format-Table -Auto
$DataTable | Export-Csv "c:\temp\LastLogonDate.csv" -Delimiter ";"
Wenn ich nur in OU Ebene 1 Suche ist auch alles kein Problem aber sobald ich versuche eine Ebene "Tiefer" zu gehen bekomme ich folgende Fehlermeldung:
Die OU's sind wie folgt strukturiert im AD:
OU Ebene1 = Alles
OU Ebene2 = Postfächer; Gruppen; ect.
OU Ebene3 = Benutzer1;Benutzer2; ect.
Eigentlich muss ich die OU's in Ebene 3 einzeln ansteuern können, hat jemand ne Idee?
Grüße