Anwenden von Berechtigungen über viele Ordner

Brauche ich, um ein Skript zu erstellen, anwenden von Berechtigungen auf viele Ordner mit verschiedenen Berechtigungen abhängig von der Ordner-name ist. Es ist ein root Ordner freigeben, in dessen inneren sich ein Ordner für jede client. Innerhalb der einzelnen client-Ordner ist ein Abteilungs-Ordner. Ich brauche, um den Zugriff auf jede Abteilung Ordner von der security-Gruppe, so dass nur die Angehörigen der Abteilung auf Sie zugreifen können.

Würde es wie folgt Aussehen:

ROOT FOLDER SHARE  
|  
|-----CLIENT1 (everyone has access)  
|.......|------DEPARTMENT1 (only members of department1 have access)  
|.......|------DEPARTMENT2 (only members of department2 have access)  
|.......|------DEPARTMENT3 (only members of department3 have access)  
|  
|-----CLIENT2 (everyone has access)  
|.......|------DEPARTMENT1 (only members of department1 have access)  
|.......|------DEPARTMENT2 (only members of department2 have access)  
|.......|------DEPARTMENT3 (only members of department3 have access)  
|  
|-----CLIENT3 (everyone has access)  
........|------DEPARTMENT1 (only members of department1 have access)  
........|------DEPARTMENT2 (only members of department2 have access)  
........|------DEPARTMENT3 (only members of department3 have access)  

Ich bin mir nicht ganz sicher, wie dieses Weg zu ziehen, richtig. Kann mir bitte jemand helfen mich in die richtige Richtung? Diese ist auf einem server mit Windows Server 2008 R2 mit active directory-setup.

Was ich momentan so aussieht (scheint, wie es funktioniert):

$Path = Read-Host "What is the starting path?"
$DirectoryName = Read-Host "What is the name of the directory?"
$SecurityGroup = Read-Host "What is the name of the security group that will be given permissions on these directories?"
$ListOfDirectories = Get-ChildItem $Path -Recurse | Where-Object { $_.PSIsContainer } | Where-Object { $_.name -eq $DirectoryName } | foreach-object -process { $_.FullName }

foreach ($directory in $ListOfDirectories) {
    icacls.exe $directory /grant ""$SecurityGroup":M" /t
}
  • Was haben Sie bisher ausprobiert? Wo genau sind Sie stecken? Zeigen Sie uns, dass Sie ' ve setzen Sie etwas Mühe in die Sie versuchen zu bekommen, ein funktionierendes Skript zusammen.
InformationsquelleAutor user2988831 | 2013-11-13
Schreibe einen Kommentar