lupolo
Goto Top

PowerShell Mitglied von auf eine OU

Servus,

ist es möglich für jeden User der in einer OU ist die Gruppen bzw. die Get-ADPrincipalGroupMembership anzeigen zu lassen?

Bei meinem Script wirft er einfach alle Gruppen aus, aber macht keinen Absatz, wenn ein neuer User abgefragt wird:


Get-ADUser -Filter { Name -Like "*" } -Searchbase "OU=Außendienst,OU=Mitarbeiter,OU=Firma,DC=firma,DC=local" |  Get-ADPrincipalGroupMembership | ft name  

Grüße
lupo

Content-ID: 366427

Url: https://administrator.de/contentid/366427

Ausgedruckt am: 22.11.2024 um 04:11 Uhr

emeriks
emeriks 28.02.2018 um 14:24:55 Uhr
Goto Top
Hi,
mit meinen bescheidenen PS-Künsten könnte das so aussehen (nicht getestet)

Get-ADUser -Filter { Name -Like "*" } -Searchbase "OU=Außendienst,OU=Mitarbeiter_Hegro,OU=Firma,DC=ifirma,DC=local" | ForEach { $U = $_.Name;  Get-ADPrincipalGroupMembership $_ | ForEach {$U + "   " + $_.name  }}  

E.
lupolo
lupolo 28.02.2018 um 14:44:44 Uhr
Goto Top
Klappt 1a - wie bekomm ich jetzt noch rein, dass er mir nur die Gruppen auswirft, die mit VT... anfangen?

| Where-Object {$_.name -like "VT*"}   
emeriks
emeriks 28.02.2018 um 14:47:21 Uhr
Goto Top
Eine Frage der Reihenfolge

Get-ADUser -Filter { Name -Like "*" } -Searchbase "OU=Außendienst,OU=Mitarbeiter_Hegro,OU=Firma,DC=ifirma,DC=local" | ForEach { $U = $_.Name;  Get-ADPrincipalGroupMembership $_ | Where {$_.name -like "VT*"} | ForEach {$U + "   " + $_.name  }}  
lupolo
lupolo 28.02.2018 um 15:02:30 Uhr
Goto Top
Vielleicht auch interessant, wenn auch nicht ganz schlank:

1. Abfrage der User pro OU:
Get-ADUser -Filter { Name -Like "*" } -Searchbase "OU=Außendienst,OU=Mitarbeiter,OU=Firma,DC=Firma,DC=local" | ft samaccountname  

2. Variablen pro User Zuweisen und auskommentieren

#$name="MA.01" 
#$name="MA.02" 
$name="MA.03"  

Get-ADPrincipalGroupMembership -Identity "$name" | Where-Object {$_.name -like "VT*"} | Format-Table name -AutoSize -Wrap >"H:\export_$name-20180228.txt"  
colinardo
colinardo 28.02.2018 aktualisiert um 16:20:58 Uhr
Goto Top
Andere Variante:
Get-AdUser -Filter * -SearchBase "OU=Außendienst,OU=Mitarbeiter,OU=Firma,DC=Firma,DC=local" | select Name,@{n='Groups';e={(Get-ADPrincipalGroupMembership $_ | ?{$_.Name -like 'VT*'}).Name -join "`r`n"}}  | ft -Auto -Wrap  
Grüße Uwe