Per Batch Berechtigungen für Benutzerprofile ändern
Wie kann ich möglichst effizient per Batch NTFS Berechtigungen ändern / hinzufügen?
Moin zusammen,
ich habe ein kleines Problem. Auf einem Fileserver liegen Benutzerprofile.
Da ist nun etwas durcheinander gekommen und einige Benutzer haben keine Vollen Rechte mehr auf Ihr Profil.
Es betrifft ca. 250 Profile, jedes einzeln zu bearbeiten wäre ja ziemlich aufwendet. Da dachte ich - Per Batch und Skript!
... Jetzt dachte ich so.
Beispiel:
Die Liste nehme ich dann und ein zweites Script nimmt den Inhalt
In dem Fall steht z.B. das drin: C:\Dokumente und Einstellungen\Lars.Testbenutzer
Und vergibt dann über subinacl oder ähnlichem die Berechtigung für den Benutzer lars.testbenutzer.
Jetzt ist das gar nicht so einfach.. Wie kommme ich jetzt jeweils an den Benutzernamen ran?
Nun da dachte ich selbes spiel.. aber nein. Das geht ja nicht so einfach.
... Ich hab gerade kein Plan mehr wie man das in einem kleinen Script realisieren könnte.
Habt ihr da ne Idee? Wäre ganz dankbar
Lieber Gruß aus Hamburg
Heiko
Moin zusammen,
ich habe ein kleines Problem. Auf einem Fileserver liegen Benutzerprofile.
Da ist nun etwas durcheinander gekommen und einige Benutzer haben keine Vollen Rechte mehr auf Ihr Profil.
Es betrifft ca. 250 Profile, jedes einzeln zu bearbeiten wäre ja ziemlich aufwendet. Da dachte ich - Per Batch und Skript!
... Jetzt dachte ich so.
Beispiel:
for /f "delims=" %%i in ('dir /b /ad "C:\Dokumente und Einstellungen\"') do @echo C:\Dokumente und Einstellungen\%%i>>ProfileList.txt
In dem Fall steht z.B. das drin: C:\Dokumente und Einstellungen\Lars.Testbenutzer
Und vergibt dann über subinacl oder ähnlichem die Berechtigung für den Benutzer lars.testbenutzer.
Jetzt ist das gar nicht so einfach.. Wie kommme ich jetzt jeweils an den Benutzernamen ran?
Nun da dachte ich selbes spiel.. aber nein. Das geht ja nicht so einfach.
... Ich hab gerade kein Plan mehr wie man das in einem kleinen Script realisieren könnte.
Habt ihr da ne Idee? Wäre ganz dankbar
Lieber Gruß aus Hamburg
Heiko
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 194192
Url: https://administrator.de/contentid/194192
Ausgedruckt am: 23.11.2024 um 02:11 Uhr
18 Kommentare
Neuester Kommentar
Hallo heiko.wellendorf und willkommen im Forum!
Du brauchst doch überhaupt keine eigenen Variablen für Pfad und Benutzer:
Die Textdatei wäre übrigens auch nicht nötig gewesen:
Grüße
bastla
Du brauchst doch überhaupt keine eigenen Variablen für Pfad und Benutzer:
for /f "delims=" %%a in (C:\ProfileList.txt) do (
echo ntfsrechtetool "%%a" "%%~nxa" vollzugriff
)
for /d %%a in (D:\Profile\*) do (
echo ntfsrechtetool "%%a" "%%~nxa" vollzugriff
)
bastla
Hi,
habe jetzt ein wenig getestet.
Das kam dabei raus:
icacls.exe c:\temp\Test /T /C /grant ads.test.de\A-TestFdMgmt:F
Kann ich mir auch ein Logfile ausgeben lassen, nach dem durchlaufen?
Würde das ganze gerne als Job dann wöchtentlich laufen lassen, und mir hinterher entspannt die Logfiles anzeigen.
Gruß
Sew
habe jetzt ein wenig getestet.
Das kam dabei raus:
icacls.exe c:\temp\Test /T /C /grant ads.test.de\A-TestFdMgmt:F
Kann ich mir auch ein Logfile ausgeben lassen, nach dem durchlaufen?
Würde das ganze gerne als Job dann wöchtentlich laufen lassen, und mir hinterher entspannt die Logfiles anzeigen.
Gruß
Sew
Hallo Sewman!
Du kannst die Ausgabe mit
umleiten (mit "
Mit
kannst Du die derzeit gesetzten Rechte anzeigen (bzw durch die Umleitung die Ausgabe in eine Datei schreiben) lassen.
Grüße
bastla
Du kannst die Ausgabe mit
>>D:\Dein.log icacls.exe c:\temp\Test /T /C /grant ads.test.de\A-TestFdMgmt:F
>>
" wird an eine schon bestehende Datei angefügt, mit ">
" eine schon bestehende Datei überschrieben) ...Mit
>D:\Rights.txt icacls.exe c:\temp\Test /T /C
Grüße
bastla
Danke dir, aber bekomme folgende Fehlermeldung von der PowerShell, oder gilt das nicht für die PS?
The term '>>' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling
of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:3
+ FullyQualifiedErrorId : CommandNotFoundException
The term '>>' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling
of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:3
>> <<<< c:\temp\PremSet.log icacls.exe C.Temp\Test\ /T /C /grant ads.test.de\A-testFMgmt:F
+ CategoryInfo : ObjectNotFound: (>>:String) , CommandNotFoundException+ FullyQualifiedErrorId : CommandNotFoundException