Einzelnen Beitrag anzeigen

Benutzerbild von Assarbad
Assarbad

Registriert seit: 8. Okt 2010
Ort: Frankfurt am Main
1.234 Beiträge
 
#9

AW: Einzelne Funktionen als Admin ausführen

  Alt 16. Apr 2012, 20:03
Trotz alledem würde es mich interessieren, ob ich z.B. mit einer DLL oder irgendwie anders auch mal eine Funktion mit Adminrechten ausführen kann und wie das ginge.
Das geht mal prinzipiell garnicht, es sei denn du hast diverse Privilegien (bzw. der ausführende Prozeß). Im Endeffekt läuft es auf TCB-Privilegien hinaus ...

Ich rede hier von Impersonation, also dem Annehmen einer anderen Benutzeridentität (pro Thread). Alles andere läuft an Prozeßgrenzen ab und kann daher nicht pro Funktion privilegiert gemacht werden.

Es bleibt noch meine Wunschfunktion über, meinen eigenen Dienst auch mal vom Benutzer starten oder stoppen zu lassen, ohne ihn in die Diensteverwaltung leiten zu müssen.
Kannste doch. Dienste sind genau dazu da Löcher in das Rechtesystem zu bohren um gezielt Funktionalität an unprivilegierte Benutzer zu delegieren.

Sprich: schreibe zwei Dienste, oder registriere deinen Dienst zweimal. Einmal bietet er den Dienst an den du halt jetzt schon anbietest (Dienst A). Einmal bietet er (bspw. auf Basis von Gruppenmitgliedschaften oder anderen Eigenschaften) an Dienst A zu starten und zu stoppen. Schon ist die Sache gegessen und Benutzer können das bequem selber erledigen. Das geht dann ggf. sogar ohne UAC-Dialog, wenn man das so will ...
Oliver
"... aber vertrauen Sie uns, die Physik stimmt." (Prof. Harald Lesch)
  Mit Zitat antworten Zitat