Benutzerrechte

-eraz-

Commodore
Registriert
Juni 2004
Beiträge
4.270
Hi@all...

Ich suche ein Tool mit dem ich Benutzern auf einem Lokalen PC (sprich solche die nicht in
einer Domäne hängen) benutzerrechte zuweisen kann. Würde gerne z.b: das löschen
von Icons auf dem Desktop verhindern, keine Extras --> Internetoptionen im IE usw. Kennt einer von euch sowas?
 
Für was denn Tools - Windows hat doch Vollaussattung!

Rechtsklick auf Arbeitsplatz und dann auf Verwalten. Dort gehste auf Lokale Benutzer und Gruppen und erstellst Dir ne neue Gruppe, die dann die eingeschränkten Rechte haben soll- Die Benutzer fügst Du der Gruppe entsprechend hinzu.

Anschließend startest du die MMC (Start => Ausführen => mmc), da fügst Du ein Snap-In hinzu und wählst in der Liste Sicherheitsvorlagen aus. Unter Sicherheitsvorlagen wählst Du "campatws" aus, das ist meines Wissens nach die Standardvorlage. Kopier sie (also unter anderem Verzeichnis speichern). Dann machst Du diese kopierte Vorlage auf und machst die Änderungen. Wenn das geschafft ist, speicherst Du die veränderte Vorlage ab und machst das Snap-in zu.

Jetzt musste noch ein Startscript schreiben, das die Vorlage zuweist, wenn sich ein bestimmter Benutzer anmeldet. Das ganze sollte mit dem Befehl secedit klappen, frag mich aber bitte nicht nach der genauen Syntax.



Mit ner Domäne wärs natürlich eleganter, AD rulezzzz :D
 
Vielen Dank für die Antwort, das ist wohl wirklich die beste Lösung.

Moepi schrieb:
Das ganze sollte mit dem Befehl secedit klappen, frag mich aber bitte nicht nach der genauen Syntax.

DOCH! :D Ich hab im Internet gesucht und gesucht, hab leider nicht wirklich was hilfreiches gefunden. Mein Problem ist das ich die Compatws.inf konfiguriert und unter einem anderen Verzeichnis gespeichert habe.
Mit einer Batch datei und dem Secedit befehl wollte ich nun das file per Startskript angeben, aber ich bekomme entweder die Meldung das er das file nicht finden kann oder das batch file öffnet sich und hängt sich dann auf. :(

Sehr seltsam ist das ich laut Windows hilfe keinen Pfad angeben muss z.b: c:\Sicherheit\Compatws.inf oder sowas. Hast vielleicht eine ungefähre Ahnung wie die Syntax lauten muss? Damit wär mir sicher schon mal weitergeholfen.....!?
 
hmm, soweit ich weis kannst du dir das mit der batch datei alles sparen, eigentlich müsste das was du haben willst auch mit den normalen ntfs berechtigungen zu erledigen sein, sprich du gehst in den dokumente und einstellungen des gewünschten users, klickst den desktop ordner mit rechts an und wählst die registerkarte sichherheit.
nun musst du noch den gewünschten user bzw die gruppe auswählen und ihm nur lese rechte geben (gegebenfalls unter erweitert noch andere einstellungen vornehmen), dies für alle unterordner übernehmen und fertig.
falls du noch nichts mit den ntfs berechtigungen zu tun hattest musst du einfach ein wenig mit diesen rumexperemntieren, eigentlich ist dies aber rechteinfach zu verstehen.
allerdings empfehle ich dir zum testen einen ordner zu nehmen, den du vorher extra zum testen erstellt hast, wenn du nämlich pech hast entziehst du dir alle rechte um später wieder in der lage zu sein diesen ordner zu öffnen, auszuführen oder sonstiges.

mfg
pRoPh3t
 
Also mit NTFS Berechtigungen geht das nimmer, ein Menü wie "Optionen" des Internetexplorers unterliegt nicht den NTFS ACLs. Da musst schon mit Gruppenrichtlinien arbeiten.

So jetzt zu secedit. Die Syntax zur Übernahme der geänderten Richtlinie lautet normalerweise:
secedit /refreshpolicy -user_policy /enforce
secedit /refreshpolicy -machine_policy /enforce
gpupdate /force (das hier gilt nur bei Win2k3 in ner Domänenumgebung, glaub ich... ;) )

Allerdings bezieht sich das auf die Standardrichtlinie und nicht auf ne Selbstgebaute. Das Problem ist, dass diese Richtlinien in einer Datenbank gespeichert werden. Von dort aus werden sie angwendet. Diese Datenbank müsste beim Start geleert und mit der entsprehenden Richtlinie wieder "gefüllt" werden.
Das muss bei jeder Anmeldung geschehen und bei jedem Benutzer individuell. Du weißt ja sicher schon, dass wenn Du die Standardrichtlinie änderst, Du sie für alle Nutzer am Computer einschließlich dem Admin änderst. Daraus resultiert ja die ganze Schererei erst. Und ohne AD kann man das leider auch nicht so leicht umgehen.

Wie das genau weiter funzt, ich weiß es nicht. Ich hab versucht mich da rein zu lesen, aber in meiner Quelle (MCP 70-291, Microsoft Press) sind dem Thema nur 5 Seiten gewidmet. Und da werd ich net schlau draus. Sorry :(

Was in jedem Fall geht ist die Veränderung der Standardrichtlinie für alle Nutzer. Das machste wieder mit mmc und dann Snap-In hinzufügen, und dort nimmste "Gruppenrichtlinie". Das ist wieder die Standardliste, die man auch von ner Domänenumgebung her kennst. Wenn Du da jetzt was änderst, wird es sofort übernommen. Sollte es zumindest.
Wenn Du Glück hast, bezieht sich das nur auf den angemeldeten Benutzer. Du könntest dann einfach dem eingeschränkten Nutzer zu Beginn Adminrechte geben, die Änderungen machen und anschließend die Adminrechte wieder nehmen. Das könnte klappen, ganz ohne secedit :p <- hab ich grad probiert, das ändert die Einstellugnen global für alle Benutzer, ist also nicht ganz im Sinne des Erfinders - doch secedit :(

/edit:
*nachgeschlagenhab*

Die Syntax sollte wie folgt lauten:
secedit /configure /db xyz.sdb /cfg xyz.inf

So, diese xyz.sdb ist die besagte Datenbank, die xyz.inf die Compatws (bzw. Deine moifizierte). Die Datenbank sollte bei der ersten Verwenung automatisch erstellt werden. Bie /cfg steht dabei "you might need to enter the whole path" - heißt wohl: befindet sich das Ding im Standardverzeichnis, dann keine Pfadangabe, ansonsten schon.

Um Notfalls ein Rollback fahren zu können, wenn Dus vergeigst :D, vorher das hier machen:
secedit /generaterollback /cfg xyz.inf /rbk xyzrollback.inf

RBK gibt dabei den Namen des Security Templates an, die beim Rollback erstellt werden soll.


Das größte Problem, das ich dabei allerdings befürchte: Wenn Du die Batchfile beim Userlogon ausführen lässt, läuft die Batchfile im Kontext des Benutzers. Und ein eingeschränkter User hat sicher nicht die Berechtigung um Sicherheitsrichtlinien zu modifizieren. Vielleicht hängt bei Dir sich das Skript deswegen auf.


Sorry, aber mehr kann ich Dir da leider nicht helfen...
Wenn ich nächste Woche Zeit hab, stell ich das Problem vielleicht mal nach, aber bis Montag muss ich dringend für meine Exchangeprüfung lernen... *nichtdurchfallenwill* :D
 
Zuletzt bearbeitet:
Na da wünsch ich dir gleich mal viel Glück für deine Prüfung! :)

So wie du es beschrieben hast hab ich es bereits durchgeführt. Die Bearbeitete Sicherheitsvorlage Compatws.inf hab ich unter C:\ gespeichert, ebenso die Batchdatei die die Vorlage in die Sicherheitsdatenbank einbindet.

Das Problem warum bei mir sich das Batchfile immer aufgehängt hat war folgendes: Die Batchdatei hatte den Namen Secedit.bat und der Befehl darin sah so aus:"secedit /configure /db temp.sdb /cfg compatws.inf". Soweit so gut, nur das das Batchfile den gleichen Namen hatte wie der auzuführende Befehl, deswegen hing das Skript in einer Endlosschleife, da es sich immer selbst aufgerufen hatte :D . Bis ich da draufgekommen bin...... :rolleyes:

Ok, das Problem hab ich also behoben und das Batchfile einfach umbenannt und dem Benutzer nun zugewiesen. Dies funktioniert auch wunderbar, der User scheint auch genügend berechtigungen zu besitzen um den Vorgang auszuführen. Obwohl ich ohnehin denke das ein vom Administrator zugewiesenes Skript in einem anderen Sicherheitskontext läuft.

Nur, nach einigem Testen hat sich für mich herausgestellt das mit einer Sicherheitsdatenbank die Einstellungen die ich möchte (wie eben die Extras beim IE zu sperren) nicht möglich sind. Diese sind nur über Gruppenrichtlinien möglich. Nur habe ich bei denen das Problem das sie alle Benutzer inkl. Administrator betrifft und das ist doch sehr unpraktisch. (Irgendwie vermisse ich hier ein wenig Administrationsfreundlichkeit :rolleyes: )

Also habe ich mir folgendes überlegt: Der Gruppenrichtlinieneditor lässt sich bei WinXP pro per gpedit.msc aufrufen. Dort ist es möglich Administrative Vorlagen zu ex- bzw. Importieren (die sind irgendwo als *.conf file im Systemroot abgelegt). Ich werde also die *.conf files (Gruppenrichtlinien) beim lokalen benutzer so anpassen das das dieser nur eingeschränkte Rechte hat und zusätzlich generiere ich noch Administrative *.conf files für mich, mit Administrativen Rechten.

Anschliessend muss noch ein kleines Skript her (am besten wird wahrscheinlich vbs sein) mit dem ich die Administrativen conf files schnell gegen die Benutzerfiles tauschen kann, diese können sich z.b. auf einem USB Stick befinden. Wenn die konfiguration vorgenommen wurde die Benutzerrechte wieder zurückkopieren und fertig!

Das ist zwar ein sehr umständlicher weg bis zum gewünschten Ziel, aber leider kenne ich bisher keinen besseren/einfacheren Weg. Aber ich bin für weitere Anregungen dankbar :)

PS: Möchte noch besonders bei Moepi bedanken für die Ausführlichen Anregungen. :)
 
Zuletzt bearbeitet:
Danke :)
Ich wünsch Dir viel Glück dabei! Ich werd mir wie gesagt da nächste Woche nochmal Gedanken drüber machen.



JUHU geschafft - *wieeinschnitzelfreu* *MCPbin* :D
 
Zuletzt bearbeitet:
Herzlichen Glückwunsch! :daumen:
Bin auch gerade dabei die mcp 70-290 und 70-270 zu machen *zitter*, hoffe das wird was.....

Hab mich in den letzten Tagen sehr Intensiv mit dem Thema Benutzerrechte auseinandergesetzt und folgende Lösung hat sich für mich bei XP pro und 2000 pro ergeben:
Das was ich Anfangs mit den conf files machen wollte funktioniert nicht. Diese sind nur die "Schablone" für die Gruppenrichtlinien, wenn man an den Gp´s etwas ändert dann ändert sich bei diesen Files nichts. Sämtliche Änderungen werden in 3 Dateien abgespeichert und zwar in:

C:\dokumente und einstellungen\%username%\ntuser.pol
C:\Windows\System32\grouppolicy\user\registry.pol
C:\Windows\System32\grouppolicy\machine\registry.pol

Nimmt man irgendwelche Änderungen vor werden diese dort gespeichert, will man aber diese änderungen wieder Rückgängig machen (z.b. USER zu ADMIN) dann genügt es diese einfach per Skript auszutauschen. Wobei man darauf achten muss das jeder User auf dem Computer wieder diese Berechtigungen erbt. Um dies zu verhindern verweigert man dem System schreibzugriff auf die ntuser.pol, fertig.

Ich hab das alles bereits per Skript Automatisiert, ich poste diese hier mal (wird halt der Post ein wenig länger ich hoffe das stört keinen): :)


Benutzerrechte vergeben 1. Ausführung!.bat

@echo off

rem Diese Befehlszeile muss bei mehrfachbenutzern auf einem System Aktiviert werden.
rem Der jetzt Eingetragene Benutzer "Benutzer 1 2 3 etc." muss dabei gegen den User der von der GP nicht
rem betroffen sein soll Ersetzt werden.

cacls "c:\dokumente und einstellungen\Administrator\ntuser.pol" /E /P System:N
rem cacls "c:\dokumente und einstellungen\*Benutzer1*\ntuser.pol" /E /P System:N
rem cacls "c:\dokumente und einstellungen\*Benutzer2*\ntuser.pol" /E /P System:N
remcacls "c:\dokumente und einstellungen\*Benutzer3*\ntuser.pol" /E /P System:N

xcopy /h/r/y f:\Rechtevorlagen\Benutzerrechte\ntuser.pol "c:\dokumente und einstellungen\%username%"
xcopy /h/r/y f:\Rechtevorlagen\Benutzerrechte\GP_user\registry.pol C:\WINDOWS\system32\GroupPolicy\User
xcopy /h/r/y f:\Rechtevorlagen\Benutzerrechte\GP_machine\registry.pol C:\WINDOWS\system32\GroupPolicy\Machine

gpupdate /force

cacls "c:\dokumente und einstellungen\%username%\ntuser.pol" /E /P System:N

echo Vorgang abgeschlossen Sie werden nun abgemeldet!
pause

logoff

^^Diese Datei wird nur einmal (pro benutzer) ausgeführt!^^



rechte_wechsel_zu_admin.bat


@echo off
md c:\benutzerrechte_backup
md c:\benutzerrechte_backup\GP_user
md c:\benutzerrechte_backup\GP_machine

cacls "c:\dokumente und einstellungen\%username%\ntuser.pol" /E /P System:F

xcopy /h/y/r "c:\dokumente und einstellungen\%username%\ntuser.pol" c:\benutzerrechte_backup
xcopy /h/y/r C:\WINDOWS\system32\GroupPolicy\User\registry.pol c:\benutzerrechte_backup\GP_user
xcopy /h/y/r C:\WINDOWS\system32\GroupPolicy\Machine\registry.pol c:\benutzerrechte_backup\GP_machine

xcopy /h/y/r F:\Rechtevorlagen\Admin_rechte\ntuser.pol "c:\dokumente und einstellungen\%username%"
xcopy /y/r F:\Rechtevorlagen\Admin_rechte\GP_user\registry.pol C:\WINDOWS\system32\GroupPolicy\User
xcopy /y/r F:\Rechtevorlagen\Admin_rechte\GP_machine\registry.pol C:\WINDOWS\system32\GroupPolicy\Machine

gpupdate /force

cacls "c:\dokumente und einstellungen\%username%\ntuser.pol" /E /P System:N

:echo
echo off
echo off
echo off
echo Der Kopiervorgang wurde Erfolgreich durchgefuehrt!
echo off
echo Das System wird Sie nun Abmelden, bitte melden Sie
echo sich nach abschluss des Vorgangs mit Ihrem Benutzernamen und Kennwort wieder an.
echo Speichern Sie eventuelle Sitzungen bevor Sie den Vorgang fortsetzen.
echo off
echo off

pause
goto logoff

:logoff
logoff


rechte_wechsel_zu_benutzer.bat

@echo off

cacls "c:\dokumente und einstellungen\%username%\ntuser.pol" /E /P System:F

xcopy /h/r/y c:\benutzerrechte_backup\ntuser.pol "c:\dokumente und einstellungen\%username%"
xcopy /h/r/y c:\benutzerrechte_backup\GP_user\registry.pol C:\WINDOWS\system32\GroupPolicy\User
xcopy /h/r/y c:\benutzerrechte_backup\GP_machine\registry.pol C:\WINDOWS\system32\GroupPolicy\Machine

rd /s /Q c:\benutzerrechte_backup

gpupdate /force

cacls "c:\dokumente und einstellungen\%username%\ntuser.pol" /E /P System:N

echo Vorgang abgeschlossen Sie werden nun abgemeldet!
pause

logoff


So das wars, per doppelklick kann ich usern also schnell Admin Rechte geben wenn sie diese brauchen, ohne das andere User davon betroffen sind und ohne wieder alles Umzukonfigurieren.

Ich denke das ist eine tolle Lösungsanleitung für all diejenigen die auch einmal auf ein solches Problem stossen. Viel Spass damit..... :)
 
Zurück
Oben