none
Get-ADUser, oder Get-ADGroupMember als normaler User ohne RSAT Tools RRS feed

  • Frage

  • moin,

    ich möchte beim anmelden ein AD Feld auslesen und abhängig davon div. Schritte setzen.

    Meines Wissen müssten die RSAT Tools auf jeden PC installiert sein um Get-ADUser oder Get-ADGroup auszuführen, was bei uns nicht der Fall ist. Wie würde ihr vorgehen?

    Hintergrund der Aktion: ich muss falsche Drucker löschen, zb. wenn man nicht bei der Abteilung Buchhaltung ist (Office Feld). MemberOf Gruppe Buchhaltung gäbe es auch falls man das leichter abfragen könnten. Zur Not bleibt immer noch "net user xyz /Domain" und das dann auswerten oder Gruppenrichtlinien, falls es mit PS nicht geht.


    Chris

    Montag, 21. Januar 2019 09:39

Antworten

Alle Antworten

  • Moin,

    ja, RSAT muss installiert sein, um ADUC oder das Active Directory-Modul zu nutzen. Was aber immer in Windows PowerShell zur Verfügung steht, ist der DirectoryServices-Namespace. Damit kann man per LDAP an die Eigenschaften der Objekte ran, für die man Leserecht hat.

    Was natürlich auch geht, wenn einem eher nach GUI ist und man gegen keine Whitelisting-Richtlinie kämpfen muss, sind portable-Versionen von LDAP-Browsern.


    Evgenij Smirnov

    I work @ msg services ag, Berlin -> http://www.msg-services.de
    I blog (in German) @ http://it-pro-berlin.de
    my stuff in PSGallery --> https://www.powershellgallery.com/profiles/it-pro-berlin.de/
    Exchange User Group, Berlin -> https://exusg.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com


    In theory, there is no difference between theory and practice. In practice, there is.

    • Als Antwort markiert -- Chris -- Montag, 21. Januar 2019 12:15
    Montag, 21. Januar 2019 12:04
  • der Vollständigkeithalber falls jemand einmal so etwas sucht ein Beispiel

    Write-Output "first_name,last_name,email_address,mailalias"
    
    $root = [ADSI]"LDAP://OU=root,DC=firma,DC=de"
    $search = [adsisearcher]$root
    $Username = $env:USERNAME # Alias, 
    $Search.Filter = "(&(mailnickname=$username))"
    #$Search.Filter = "(&(objectCategory=person))"
    $colResults = $Search.FindAll()
    
    foreach ($i in $colResults)
    {
     [string]$i.Properties.Item('givenName'),[string]$i.Properties.Item('sn'),[string]$i.Properties.Item('mail'),[string]$i.Properties.Item('mailNickname'),[string]$i.Properties.Item('physicalDeliveryOfficeName') -join ","
    }
    
    read-host "fertig"


    Chris

    Montag, 21. Januar 2019 13:38