none
Get-ADuser soll alle Gruppenmitgliedschaften ausgeben RRS feed

  • Frage

  • Hallo,


    Ich schreibe mir regelmäßig ein Textdatei mit den für mich wichtigen BenutzerdatenDaten, habe jetzt aber fewstgestellt das MemberOf gekürzt wird. D. h. es werden nicht alle Gruppenmitgliedschaften in die Textdatei geschrieben.

    Dies ist mein PS Script:
    import-module ActiveDirectory
    
    Get-ADUser -Filter * -Properties * | Select-Object -Property Name,SamAccountName,whenCreated,LastLogonDate,Description,EmailAddress,telephoneNumber,homePhone,otherHomePhone,mobile,otherMobile,facsimileTelephoneNumber,pager,otherPager,Title,Department,Company,Organization,MemberOf,enabled,accountExpires | Sort-Object -Property Name
    

    Wie erreiche ich das alle Gruppenmitgliedschaften geschrieben werden? Für mich ist es nicht wichtig das nur die Gruppe angezeigt wird, das auch das LDAP Pfad mit CN ,OU und DC passt schon.

    gruss max

    Dienstag, 30. April 2013 09:23

Antworten

  • Versuche es mal hiermit. Die Formatierung ist Geschmackssache.

    Import-Module ActiveDirectory
    
    Get-ADUser -Filter * -Properties * | Select-Object -Property Name,SamAccountName,whenCreated,LastLogonDate,Description,EmailAddress,telephoneNumber,homePhone,otherHomePhone,mobile,otherMobile,facsimileTelephoneNumber,pager,otherPager,Title,Department,Company,Organization,MemberOf,enabled,accountExpires |
    foreach-Object { 
    $_ | fl Name,SamAccountName,whenCreated,LastLogonDate,Description,EmailAddress,telephoneNumber,homePhone,otherHomePhone,mobile,otherMobile,facsimileTelephoneNumber,pager,otherPager,Title,Department,Company,Organization,enabled,accountExpires;
    $_.MemberOf | ForEach-Object { Write-Host $("MemberOf                 : "+$_) }
    Write-Host ""
    Write-Host "-------------------------------------------"
    }

    • Als Antwort vorgeschlagen JGraessler Dienstag, 30. April 2013 12:18
    • Als Antwort markiert Max-2014 Dienstag, 30. April 2013 14:06
    Dienstag, 30. April 2013 12:01

Alle Antworten

  • Hallo Max,

    mir ist nicht bekannt das das memberof ab einer bestimmten Gruppenanzahl abgeschnitten wird.

    Es erfolgt keine rekursive Abfrage! Möglicherweise ist das deine Herausforderung.

    Mittels Get-Member kannst du rekursiv die Gruppenmitgliedschaften abfragen.

    Viele Grüße,


    Philipp Halbedel

    MCP 2003,MCITP EA Server 2008,MCITP EA Windows 7,MCSA2008,MCSA2012 

    Meine Antwort war hilfreich? ich freu mich über eine Bewertung. If my answer was helpful, I'm glad about a rating! 

    I do not represent the organisation I work for, all the opinions expressed here are my own.

    Dienstag, 30. April 2013 11:00
  • Hi, das wird definitiv abgeschnitten. Es werden bei jedem Benutzer nur 4 Gruppen angezeigt.

    Das mit get-member ist ja schön und gut, ich brauche aber nicht nur die MemberOf Daten und mit Get-Adduser bekomme ich wunderbar alles in einer Datei.

    Gruss Dennis

    Dienstag, 30. April 2013 11:09
  • Wie wärs dann, wenn du bei deiner Get-ADUser Abfrage das "MemberOf" ausschneidest, dafür per Get-Member noch die Gruppen jeweils anfügst? Mir kommt leider gerade keine Idee wie man das machen kann, dafür bin ich noch nicht gut genug ;).

    The following is my signature:

    Powershell Programmer & Advanced Lua Programmer

    Location: Switzerland

    Beside that, whenever you see a reply, you think is helpful, click "Vote As Helpful"! And whenever you see a reply being an answer to the main question of the thread, click "Mark As Answer" (if you opened the thread).

    I published the URL's for the icons in my signature.

    Please contact me, before reporting me, thank you.

    Need any links for images like CodeBlock? Go here.

    Dienstag, 30. April 2013 11:14
  • Versuche es mal hiermit. Die Formatierung ist Geschmackssache.

    Import-Module ActiveDirectory
    
    Get-ADUser -Filter * -Properties * | Select-Object -Property Name,SamAccountName,whenCreated,LastLogonDate,Description,EmailAddress,telephoneNumber,homePhone,otherHomePhone,mobile,otherMobile,facsimileTelephoneNumber,pager,otherPager,Title,Department,Company,Organization,MemberOf,enabled,accountExpires |
    foreach-Object { 
    $_ | fl Name,SamAccountName,whenCreated,LastLogonDate,Description,EmailAddress,telephoneNumber,homePhone,otherHomePhone,mobile,otherMobile,facsimileTelephoneNumber,pager,otherPager,Title,Department,Company,Organization,enabled,accountExpires;
    $_.MemberOf | ForEach-Object { Write-Host $("MemberOf                 : "+$_) }
    Write-Host ""
    Write-Host "-------------------------------------------"
    }

    • Als Antwort vorgeschlagen JGraessler Dienstag, 30. April 2013 12:18
    • Als Antwort markiert Max-2014 Dienstag, 30. April 2013 14:06
    Dienstag, 30. April 2013 12:01
  • Hi,

    tausend Dank, das ist ja perfekt. Die Formatierung ist doch super.

    Nur eine kleine Frage noch die mir auch bei anderen PS Skripten auffällt. Wie bekomme ich deutsche oder generell Umlaute in solche ausgaben rein

    z. bsp. wird das ö immer als " angezeigt.

    gruss max

    Dienstag, 30. April 2013 12:17
  • Suche mal nach "Encoding". Zum Beispiel wenn du in eine Datei schreiben willst dann benutze folgendes Command:

    $VariableMitInhalt | Out-File -Encoding utf8 -FilePath PfadZurOutPutDatei 

    Dienstag, 30. April 2013 12:22
  • Hallo,

    es gibt da eine UmgebungsVariable die die Aufzaehlung regelt:

    $FormatEnumerationLimit

    sitz wohl standardmaessig auf 4! Die kannst du aber anpassen und schon sollten bei der Ausgabe bei MemberOf alle Gruppen zu sehen sein.

    Dies Variable wirk sich auch hier aus

    Get-ADUser -Filter * -Properties * | Select-Object -property memberof

    zeigt nur 4 Gruppen an

    hier nicht

    Get-ADUser -Filter * -Properties * | Select-Object -ExpandProperty memberof

    zeigt direkt alle Gruppen unabhaengig von der Variablen

    Beste Gruesse
    brima



    • Bearbeitet brima Dienstag, 30. April 2013 13:41
    Dienstag, 30. April 2013 13:28