Powershell: Alle User anzeigen, die Zugriff auf einen Share haben
Hallo Ihr PS-Freaks,
ich möchte gerne alle User anzeigen, die Zugriff (also mindestens Lesen) auf einen Share haben.
Damit bekomme ich schon einmal alle Zugriffe inkl. AD-Gruppen angezeigt:
Vermutlich muss noch eine Schleife eingebaut werden, die dann noch diese AD-Gruppen in User auflöst.
Letztendlich sollte dabei nur so etwas herausgekommen:
Share:
User: User A, B, C, ....
Ich kenne mich noch nicht so gut mit der Materie aus, vielleicht kann mir jemand von Euch helfen.
Einen schönen Tag!
Benson
ich möchte gerne alle User anzeigen, die Zugriff (also mindestens Lesen) auf einen Share haben.
Damit bekomme ich schon einmal alle Zugriffe inkl. AD-Gruppen angezeigt:
(get-acl , 'ordnername').Access| Select-Object -ExpandProperty IdentifyReference
Vermutlich muss noch eine Schleife eingebaut werden, die dann noch diese AD-Gruppen in User auflöst.
Letztendlich sollte dabei nur so etwas herausgekommen:
Share:
User: User A, B, C, ....
Ich kenne mich noch nicht so gut mit der Materie aus, vielleicht kann mir jemand von Euch helfen.
Einen schönen Tag!
Benson
Please also mark the comments that contributed to the solution of the article
Content-Key: 321937
Url: https://administrator.de/contentid/321937
Printed on: April 26, 2024 at 13:04 o'clock
3 Comments
Latest comment
Get-ADGroupMember GRUPPEXYZ -recursive ist dein Freund
Gruß
Gruß
In der Schleife machst du eine Abfrage mit Get-ADGroupMember setzt den Parameter -ErrorAction Silently Continue und speicherst das Ergebnis in einer Variablen. Die Variable checkst du mit einer IF-Abfrage: Wenn Daten in der Variable stehen war es eine Gruppe ansonsten gibst du den Usernamen aus.
Das ganze lässt du noch durch Select -Unique laufen um doppelte User zu entfernen. Fertig.
Das ganze lässt du noch durch Select -Unique laufen um doppelte User zu entfernen. Fertig.
(get-acl C:\Ordner).Access | %{
$account = $_.IdentityReference.Value.split('\')[-1]
try{
$result = Get-ADGroupMember $account -Recursive -EA Stop
$result.SamAccountName
}catch{
$account
}
} | Select -Unique