Quantcast
Viewing all articles
Browse latest Browse all 2314

AD Share NTFS Berechtigungen ausgeben lassen - ERWEITERUNG

Hi zusammen,

Ich nochmal zu diesem Thema:

TEIL 1

Diesmal mit Erweiterung des Ganzen. Vielleicht könnt Ihr mir ja nochmal weiterhelfen.

Das Skript durchsucht ja wie bereits erwähnt diverse Shares nach "Berechtigungsgruppen"

Diese Gruppe beinhalten 2 Arten von Members:

- User:

Diese werden durch das Skript richtig ausgegeben, dabei werden der Displayname, das Department sowie die Berechtigungen der Berechtigungsgruppe auf dem Share angezeigt... alles gut soweit

- Abteilungsgruppen:

Hier sind Gruppen in der Berechtigungsgruppe. Auch diese werden durch die aktuelle Variante vom Skript ausgegeben, samt Members und Department ...

Allerdings werden in diesem Fall die Berechtigungen der Berechtigungsgruppe nicht angezeigt!!

$folders = gci \\def-svr1\e$ |?{$_.PSIsContainer}foreach($folder in $folders){
            $accessrules =@()

            $acl =Get-Acl $folder.FullName
            $acl.GetAccessRules($true,$IncludeInheritedRights,[System.Security.Principal.NTAccount])|%{try{
            $test =Get-ADGroup $_.IdentityReference.toString().split('\')[1] | select -expand Samaccountname
            $names = Get-ADGroupmember $_.IdentityReference.toString().split('\')[1]|select-expand Samaccountname}Catch{"System ist kein gültiger User"}foreach($name in $names){if($_.IdentityReference.toString().split('\')[1] -ne "Administrators"){
              if  ($_.IdentityReference.toString().split('\')[1]-ne "Administratoren"){if($_.IdentityReference.toString().split('\')[1] -ne "SYSTEM"){
                           try{

            $UserData =  Get-ADUser $name  -properties Displayname, Department  | select Displayname, Department

            $accessrules += New-Object PSObject -Property @{"Folder" = $folder.FullName"Berechtigungsgruppe" = $test #$_.IdentityReference"Abteilungsgruppe" = $NULL"Member" = $name"Displayname" = ($UserData.DisplayName)"Department" = ($UserData.Department)"Rights" = $_.FileSystemRights
                               } #Ende Object

                }
                Catch {
                try{
                $memb = Get-ADGroupmember $name | select -expand Samaccountname
              }Catch {"System ist kein gültiger User"}

            foreach($membr in $memb) {
              if ($_.IdentityReference -ne "Administrators"){
              if  ($_.IdentityReference -ne "Administratoren"){
              if ($_.IdentityReference -ne "SYSTEM"){


            $UserData =  Get-ADUser $membr -properties Displayname, Department  | select Displayname, Department

            $accessrules += New-Object PSObject -Property @{"Folder" = $folder.FullName"Berechtigungsgruppe" = $test"Abteilungsgruppe" = $name"Member" = $membr"Displayname" = ($UserData.DisplayName)"Department" = ($UserData.Department)"Rights" = $test.FileSystemRights
                               } #Ende Object


                }}}
                }

                }}}}
                 } #Ende Schleife $names

             return $accessrules   | sort Folder,Account | select Folder, Berechtigungsgruppe, Abteilungsgruppe, Member, Displayname, Department, Rights  | export-csv "C:\$folder.csv" -NoType -Delimiter ";" -Encoding UTF8

}
}

Jemand eine Idee was geändert werden muss, damit auch bei den Berechtigungsgruppen, die Abteilungsgruppen  als Member haben, die Rechte auf den jeweiligen Share ordnungsgemäß angezeigt werden??

Danke im Voraus

Michael


Viewing all articles
Browse latest Browse all 2314


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>