Powershell, erweiterte NTFS Berechtigungen einem Ordner vergeben
16.12.2011
13:14:08 Uhr747 Aufrufe
13:14:08 Uhr
Noch nicht bewertet
Hallo Miteinander
Ich bin ein Neuling in der Windows Powershell. Jetzt habe ich einen Auftrag bekommen, die erweiterten Berechtigungen einem Ordner zu vergeben.
Dies soll alles über ein Skript laufen.
Ich habe jetzt mehrere Stunden daran gearbeitet aber komme einfach nicht ans Ziel.
Mein Ziel ist es folgende Berechtigungen zu setzen:
Diese für "Nur diesen Ordner":
Diese für "Nur Unterordner und Dateien":
Hier noch mein Code, der euch vieleicht weiterhelfen kann:
Ich hoffe Ihr könnt mir weiterhelfen...
Gruss
Sergio
Dies soll alles über ein Skript laufen.
Ich habe jetzt mehrere Stunden daran gearbeitet aber komme einfach nicht ans Ziel.
Mein Ziel ist es folgende Berechtigungen zu setzen:
Diese für "Nur diesen Ordner":

Diese für "Nur Unterordner und Dateien":

Hier noch mein Code, der euch vieleicht weiterhelfen kann:
01.
cls 02.
03.
$wPowerShell=new-object -comobject wscript.shell 04.
$Wartezeit = 0 # Benutzer muss selbst die Schaltfläche betätigen 05.
$Schaltfläche = 4 # Schaltfläche Ja und Nein 06.
07.
try 08.
{ 09.
do 10.
{ 11.
$ordnername = Read-Host "Ordnername eingeben(Keine Sonderzeichen, kurzer Name und zusammengeschrieben)" 12.
$path = "C:\Tests\" + $ordnername 13.
if((Test-Path -Path $path) -eq $true) 14.
{ 15.
Write-Host "Ordnername ist schon vorhanden, bitte geben Sie ein neuer Namen ein." 16.
} 17.
} 18.
while((Test-Path -Path $path) -eq $true) 19.
20.
#Ordner Pfad definieren und erstellen 21.
$NewFolder = New-Item -Path $path -ItemType "directory" 22.
23.
$fulluser= Read-Host "Welche Gruppe soll Vollzugriff haben?" 24.
25.
$Antwort=$wPowershell.popup("Gibt es eine Gruppe die Vollzugriff haben soll?",$Wartezeit,"Überschrift Ausgabefenster",$Schaltfläche) 26.
27.
if ($Antwort-eq 6) # Fall "Ja" oder "Yes" gedrückt wurde... 28.
{ 29.
$readuser= Read-Host "Geben Sie die gewünschte Gruppe ein." 30.
} 31.
32.
$colRights = [System.Security.AccessControl.FileSystemRights]"Traverse" 33.
34.
$InheritanceFlag = [System.Security.AccessControl.InheritanceFlags]::None 35.
$PropagationFlag = [System.Security.AccessControl.PropagationFlags]::None 36.
37.
$objType =[System.Security.AccessControl.AccessControlType]::Allow 38.
39.
40.
$objACE = New-Object System.Security.AccessControl.FileSystemAccessRule ` 41.
($fulluser, $colRights, $InheritanceFlag, $PropagationFlag, $objType) 42.
43.
$objACL = Get-ACL $NewFolder 44.
$objACL.RemoveAccessRule($objACE) 45.
46.
Set-ACL $NewFolder $objACL 47.
48.
} 49.
catch 50.
{ 51.
}Ich hoffe Ihr könnt mir weiterhelfen...
Gruss
Sergio




