Jump to content
Sign in to follow this  
Bubblegum

Ausgabe Anzeigename Manager

Recommended Posts

Moin,

 

magst du bitte noch etwas genauer erklären, worum es geht, was du genau willst und was die Anforderung dahinter ist? Deine Frage ist doch arg knapp geraten.

 

Danke.

 

Gruß, Nils

 

Share this post


Link to post
Share on other sites

Gerne. Ich würde gerne bei einem AD-User den Managed by Objekt auslesen. Wenn ich das mache, erhalte ich aber nur die DN Struktur (CN=blabla, CN=blublub) .

 

Der Output solte aber den reinen Vor und Nachnamen beinhalten. Was kann man machen, damit man nur den Namen erhält?

Share this post


Link to post
Share on other sites

Moin,

 

OK, technisch verstanden. Was willst du mit den Daten dann machen? Geht es um eine Einzelabfrage, sollen die Daten irgendwo hin ...? Willst du einzelne Manager abfragen oder das ganze AD?

 

Ins Blaue hinein ein fertiges Skript, das die gesamte Manager-Hierarchie eines AD ausgibt. Mit dem Parameter -name gibt es den Namen lesbar aus. Das Skript realisiert das über ADSI.

https://gallery.technet.microsoft.com/scriptcenter/Document-Active-Directory-47486cf5

 

Und hier eins für eine Einzelabfrage, dieses arbeitet mit den AD-Cmdlets.

https://community.spiceworks.com/topic/2074130-how-to-list-a-direct-reports-in-powershell

 

Gruß, Nils

 

Share this post


Link to post
Share on other sites

Genau es geht um eine Einzelabfrage, z.B:

 

Get-ADUser -Filter {samaccountname -like username*} -Properties name, manager | select name, manager

 

wie erwähnt, wenn man das in dem stil ausführt erhälst du den manager in der ausgabe mit der DN struktur (CN=blabla, CN=blublub) ausgeliefert, aber ich würde nur den Namen benötigen.

 

Danke für den Link, aber wie baue ich das in den Get-ADUser abfrage ein, um ein sauberes Ergebnis zu erhalten?

Share this post


Link to post
Share on other sites

Moin,

 

seufz - genau deshalb frage ich doch, was du damit vorhast. Was ist für dich ein "sauberes Ergebnis"? Bitte lass dir solche Dinge nicht hinterher aus der Nase ziehen, sondern sag gleich, was du vorhast.

 

Der zweite Link dürfte übrigens eher das Gegenteil von dem tun, was du meinst, hier einer, der wohl besser passt. (Im übrigen habe ich jetzt nach "PowerShell manager" gesucht, das hättest du sicher auch hinbekommen ...)

https://itknowledgeexchange.techtarget.com/powershell/get-ad-users-manager/

 

Gruß, Nils

 

Share this post


Link to post
Share on other sites

Habe es mal hiermit getestet:

 

Get-ADUser -Filter {samaccountname -like username*} -Properties * | Select-Object -Property Name, Title, @{L='Manager';expression={$_.manager -replace '^CN=|,.*$'}}

 

Nur bei der Ausgabe es Managers folgt nur das Format "Nachname\"

 

Wie bekomme ich den Ausdruck so hin, dass mir der Manager Vorname und Nachname normal angezeigt wird?

 

Namensstruktur ist Name, Vorname

Edited by Bubblegum

Share this post


Link to post
Share on other sites

Moin,

 

dein Code nimmt einfach den Wert aus "manager", entfernt das "CN=" und schneidet ihn nach dem ersten Komma ab. Bei deinem Namensformat passt das natürlich nicht.

 

Da in "manager" der DN des Zielobjekts steht, kannst du damit das Zielobjekt ansprechen und auslesen. Folgender Code zeigt das als Verschachtelung, die Pipe ist nur zum Anzeigen da:

 

Get-ADUser -identity ((Get-ADUser -Filter {samaccountname -like 'UllaP'} -Properties *).Manager) | Select-Object -Property Name

Gruß, Nils

 

Share this post


Link to post
Share on other sites

Moin,

 

naja, probier's halt aus. ;-)

 

Die Logik in dem Code ist die: Die Abfrage in der Klammer öffnet das Objekt des "untergebenen" Mitarbeiters und liest dort alle Eigenschaften aus - letzteres ist nur der Trick, um das "manager"-Feld dabeizuhaben. Statt des * könnte man hier auch gleich nur nach "manager" fragen, das ist bei einer einzelnen Abfrage aber eigentlich egal. Die äußere Abfrage nimmt jetzt den Wert aus "manager", was ja der DN des "vorgesetzten" Managers ist, und verwendet ihn als Identity, um dieses Objekt anzusprechen. Da es sich hierbei um das "äußere" Kommando handelt, hast du im Effekt jetzt also das Userobjekt des Vorgesetzten im Zugriff und kannst damit alles machen, was man mit einem AD-Userobjekt anstellen kann - also auch andere Werte auslesen.

 

Ersetz einfach den Teil nach der Pipe z.B. durch fl *, das sollte dir alle Eigenschaften des Vorgesetzten anzeigen (bzw. die, die das Cmdlet ohne weitere Schalter eben ausgibt).

 

Gruß, Nils

 

Edited by NilsK

Share this post


Link to post
Share on other sites

Ok, soweit das Konstrukt verstanden.

 

Das Ziel soll natürlich nicht nur sein alle Attribute des Managers auszulesen, sondern auch die des Mitarbeiters.

 

Wäre sowas in der Art: Get-ADUser -identity ((Get-ADUser -Filter {samaccountname -like 'UllaP'} -Properties *).Manager), -Filter{samaccountname -like "username*"} | Select-Object -Property Name

 

Syntaktisch bin ich mir jetzt etwas unsicher, aber wenn ich es in der äußeren Klammer platziere, dürfte ich doch die Elemente des eigentlichen Accounts abprufen können?

Share this post


Link to post
Share on other sites

Und WOFÜR brauchst du diese Informationen? Bekommt das irgendjemand zum prüfen? Wird das technisch weiterverarbeitet? Sollen Berechtigungen damit verwaltet werden?

In welchem Format den Namen? Vor und Nachname? Nach und Vorname?

Share this post


Link to post
Share on other sites
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte überlege Dir, ob es nicht sinnvoller ist ein neues Thema zu erstellen.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

Werbepartner:



×
×
  • Create New...