Unterschiedliche Ordnerberechtigungen in homogener Ordnerstruktur vergeben
Guten Morgen liebe administrator.de-ler,
bevor ich mir einen Haufen Handarbeit aufhalse frag ich mal lieber hier nach. ;)
Vorhanden ist eine Ordnerstruktur in folgendem Format:
Ordner1
Buchhaltung
Angebote
Ordner2
Buchhaltung
Angebote
zZ hat jeder alle Berechtigungen in jedem Ordner und Unterordner.
Ziel ist es zB AD-Gruppe Buchhaltung volle Berechtigung auf Ordner Buchhaltung und AD-Gruppe Verkauf volle Berechtigung auf Ordner Angebote zu gewähren. Allgemein soll jeder leseberechtigung überall haben.
Kann man zB per Skript rekursiv gleichen Unterordnern eine bestimmte Berechtigung zuweisen?
Gruß, Thomas
bevor ich mir einen Haufen Handarbeit aufhalse frag ich mal lieber hier nach. ;)
Vorhanden ist eine Ordnerstruktur in folgendem Format:
Ordner1
Buchhaltung
Angebote
Ordner2
Buchhaltung
Angebote
zZ hat jeder alle Berechtigungen in jedem Ordner und Unterordner.
Ziel ist es zB AD-Gruppe Buchhaltung volle Berechtigung auf Ordner Buchhaltung und AD-Gruppe Verkauf volle Berechtigung auf Ordner Angebote zu gewähren. Allgemein soll jeder leseberechtigung überall haben.
Kann man zB per Skript rekursiv gleichen Unterordnern eine bestimmte Berechtigung zuweisen?
Gruß, Thomas
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 158787
Url: https://administrator.de/forum/unterschiedliche-ordnerberechtigungen-in-homogener-ordnerstruktur-vergeben-158787.html
Ausgedruckt am: 02.04.2025 um 13:04 Uhr
6 Kommentare
Neuester Kommentar
Tag auch
Dafür gibt es das Tool xcacls. Damit kann man Batchdateien machen, die die ACLs setzen. Hier ein Beispiel (nicht getestet):
usw. usf.
Die Namen der AD-Gruppen und Ordner musst du natürlich anpassen.
Hier ein Link dazu:
http://support.microsoft.com/kb/318754/de
Ich persönlich würde die Batchdatei schreiben, ordentlich testen (Wird auch die richtige Berechtigung auf den richtigen Ordnern gesetzt?), über Nacht laufen lassen und am nächsten Morgen ein halbes Stündchen früher ins Büro gehen, damit du noch kurz kontrollieren kannst, ob die Batchdatei ordentlich durchgelaufen ist.
Gruss TuXHunT3R
Dafür gibt es das Tool xcacls. Damit kann man Batchdateien machen, die die ACLs setzen. Hier ein Beispiel (nicht getestet):
xcacls D:\Ordner1 /t /c /g Domain/Domain Users:R /y
xcacls D:\Ordner1\Angebote /t /c /g Domain/Verkauf:C /y
xcacls D:\Ordner1\Buchhaltung /t /c /g Domain/Buchhaltung:C /y
xcacls D:\Ordner2 /t /c /g Domain/Domain Users:R /y
xcacls D:\Ordner2\Angebote /t /c /g Domain/Verkauf:C /y
xcacls D:\Ordner2\Buchhaltung /t /c /g Domain/Buchhaltung:C /y
usw. usf.
Die Namen der AD-Gruppen und Ordner musst du natürlich anpassen.
Hier ein Link dazu:
http://support.microsoft.com/kb/318754/de
Ich persönlich würde die Batchdatei schreiben, ordentlich testen (Wird auch die richtige Berechtigung auf den richtigen Ordnern gesetzt?), über Nacht laufen lassen und am nächsten Morgen ein halbes Stündchen früher ins Büro gehen, damit du noch kurz kontrollieren kannst, ob die Batchdatei ordentlich durchgelaufen ist.
Gruss TuXHunT3R
Moin Moin
Wenn Du nochmal scharf auf Hunters Codebeispiel schaust wirst du sehen, das er den Parameter /t bereits angegeben hat, was deine Frage eigetlich beantworten sollte.
Ich denke so wie das Problem liegt bist du mit den Skript immer noch schneller durch als "zu Fuß".
Gruß L.
Wenn Du nochmal scharf auf Hunters Codebeispiel schaust wirst du sehen, das er den Parameter /t bereits angegeben hat, was deine Frage eigetlich beantworten sollte.
Ich denke so wie das Problem liegt bist du mit den Skript immer noch schneller durch als "zu Fuß".
Gruß L.
moin Thomas,
@l. /t geht aber nicht von alleine in die Unterordner worin Angebote oder Buchhaltung ist.
die Zugriffsrechte kannst Du auch mit CACLS (respektive ICACLS) neu setzen.
das ganze sollte sich mit einem Einzeiler von der CMD abgefeuert bewerkstelligen lassen.
Anstatt D:\ gibst Du den richtigen Pfad an
zum Scharfmachen aus der ersten Forschleife NUR das @echo entfernen.
Gruß Phil
@l. /t geht aber nicht von alleine in die Unterordner worin Angebote oder Buchhaltung ist.
die Zugriffsrechte kannst Du auch mit CACLS (respektive ICACLS) neu setzen.
das ganze sollte sich mit einem Einzeiler von der CMD abgefeuert bewerkstelligen lassen.
Anstatt D:\ gibst Du den richtigen Pfad an
for /f "tokens=* delims=." %h in ("...@echo") do for %i in (D:\) do (for %a in ("%~iBuchhaltung=Buchhaltung" "%~iAngebote=Verkauf") do for /f "tokens=1,2 delims==" %b in ("%~a") do Dir /s /b /ad "%~b" | findstr /e /i "\%~nxb" && %~h cacls "%~b" /t /e /p %~c:f)& for /f "delims=" %b in ('Dir /b /ad "%~i"') do %~h cacls "%~i%~b" /t /e /p jeder:R
zum Scharfmachen aus der ersten Forschleife NUR das @echo entfernen.
Gruß Phil
Oder gibt´s nicht auch die Möglichkeit die Hauptordner einzulesen und dann jeweils die ACL setzen?
machts doch!den HauptOrdner gibst Du anstatt dem "D:\" an
wenn Deine Struktur zB. im Laufwerk e:\ liegt gibts Du anstatt "D:\" "e:\" an - Backslash nicht vergessen!
D:\
- Ordner1
- - Buchhaltung
- - Angebote
-...
- Ordner 99
- - Buchhaltung
- - Angebote
wenn Deine Struktur zB. im Ordner "D:\Meine Daten" liegt: gibst Du anstatt "D:\" "D:\Meine Daten\" ein. - Backslash nicht vergessen!- Ordner1
- - Buchhaltung
- - Angebote
-...
- Ordner 99
- - Buchhaltung
- - Angebote
ich hab noch eine Schleife davor gesetzt, damit Du erst "Testen" kannst (es wird nur angezeigt was gemacht werden würde).
wenn Du nicht mehr Testen möchtest entfernst Du das "@echo" aus der 1. Forschleife die Punkte lässte Drin.
Gruß Phil