Jump to content

Probleme mit dem Auslesen des ADs (Powershell)


Direkt zur Lösung Gelöst von NilsK,
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben (bearbeitet)

Hallo,

 

ich habe ein kleines Problem in der Powershell bei dem ich aktuell nicht weiterkomme. Sicherlich nur eine Kleinigkeit, aber ich komme nicht drauf das Problem zu lösen.

 

Hier ein Auszug aus meinem Script:

Import-Module ActiveDirectory

#Auslesen der DistinguishedNames und abspeichern in einem Array 
$OU = @(Get-ADOrganizationalUnit -filter 'Name -like "*ent*"' -SearchBase "OU=XXX,DC=XXX,DC=XXX")|Select-Object -Property "DistinguishedName"

$input = Read-Host -Prompt "Please choose an option"

$choice_ou = $OU[$input]



Get-AdUser -Filter * -SearchBase $choice_ou

Wenn ich den Befehl so ausführe, bekomm ich folgende Meldung:

Get-ADUser : Der bereitgestellte definierte Name muss einer der folgenden Partitionen zugeordnet sein: "DC=XXX,DC=XXX , CN=Configuration,DC=XXX,DC=XXX ,
CN=Schema,CN=Configuration,DC=XXX,DC=XXX , DC=ForestDnsZones,DC=XXX,DC=XXX , DC=DomainDnsZones,DC=XXX,DC=XXX".
In Zeile:15 Zeichen:1
+ Get-ADUser -Filter * -SearchBase $choice_ou
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Get-ADUser], ArgumentException
    + FullyQualifiedErrorId : ActiveDirectoryCmdlet:System.ArgumentException,Microsoft.ActiveDirectory.Management.Commands.GetADUser

Übergebe ich den Befehl nun allerdings direkt, z.B. so:

Get-ADUser -Filter * -SearchBase "OU=Praktikanten XXX,OU=Praktikanten,OU=Benutzer_Gruppen,DC=XXX,DC=XXX"

dann funktioniert es einwandfrei. Was mache ich hier falsch? Vielen Dank für eure Hilfe.

bearbeitet von inno-it
  • Beste Lösung
Geschrieben (bearbeitet)

Moin,

 

was steht denn in $choice_ou tatsächlich drin?

 

EDIT: Ich habe mal mit dem Variablen-Monitor von ISESteroids nachgesehen. Demnach ist $choice_ou ein Objekt mit einer Eigenschaft namens "DistinguishedName". Du musst also diese Eigenschaft abfragen, dann geht es:

Get-AdUser -Filter * -SearchBase $choice_ou.DistinguishedName

Das ist die Tücke: PowerShell arbeitet mit Objekten, nicht mit Strings.

 

Gruß, Nils

bearbeitet von NilsK
Geschrieben

Hier der Inhalt:

DistinguishedName                                                                                                                                                                                        
-----------------                                                                                                                                                                                        
OU=XXX,OU=XXX,OU=XXX,OU=XXX,DC=XXX,DC=XXX  
Geschrieben (bearbeitet)

Vielen Dank. Ich hatte mir schon gedacht, dass es daran liegt. Es funktioniert nun auf jeden Fall einwandfrei. Arbeite mich momentan noch in das Thema ein, daher kommen am Anfang vielleicht noch derartig "dumme" Fragen :)

bearbeitet von inno-it
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...