Desktopsicherheit und -zugriffsrechte
Mit Sicherheit können Sie den Zugriff auf Desktopobjekte steuern. Weitere Informationen zur Sicherheit finden Sie unter Access-Control Model.
Sie können einen Sicherheitsdeskriptor für ein Desktopobjekt angeben, wenn Sie die Funktion CreateDesktop oder CreateDesktopEx aufrufen. Wenn Sie NULL angeben, ruft der Desktop einen Standardsicherheitsdeskriptor ab. Die ACLs im Standardsicherheitsdeskriptor für einen Desktop stammen von der übergeordneten Fensterstation.
Um den Sicherheitsdeskriptor eines Fensterstationsobjekts abzurufen oder festzulegen, rufen Sie die Funktionen GetSecurityInfo und SetSecurityInfo auf.
Wenn Sie die Funktion OpenDesktop oder OpenInputDesktop aufrufen, überprüft das System die angeforderten Zugriffsrechte mit dem Sicherheitsdeskriptor des Objekts.
Zu den gültigen Zugriffsrechten für Desktopobjekte gehören die Standardzugriffsrechte und einige objektspezifische Zugriffsrechte. In der folgenden Tabelle sind die Standardzugriffsrechte aufgeführt, die von allen Objekten verwendet werden.
Wert | Bedeutung |
---|---|
DELETE (0x00010000L) | Erforderlich, um das Objekt zu löschen. |
READ_CONTROL (0x00020000L) | Erforderlich, um Informationen im Sicherheitsdeskriptor für das Objekt zu lesen, ohne dass die Informationen in der SACL enthalten sind. Zum Lesen oder Schreiben der SACL müssen Sie das zugriffsrecht ACCESS_SYSTEM_SECURITY anfordern. Weitere Informationen finden Sie unter SACL-Zugriffsrecht. |
SYNCHRONIZE (0x00100000L) | Wird für Desktopobjekte nicht unterstützt. |
WRITE_DAC (0x00040000L) | Erforderlich, um die DACL im Sicherheitsdeskriptor für das -Objekt zu ändern. |
WRITE_OWNER (0x00080000L) | Erforderlich, um den Besitzer im Sicherheitsdeskriptor für das Objekt zu ändern. |
In der folgenden Tabelle sind die objektspezifischen Zugriffsrechte aufgeführt.
Zugriffsrecht | BESCHREIBUNG |
---|---|
DESKTOP_CREATEMENU (0x0004L) | Erforderlich, um ein Menü auf dem Desktop zu erstellen. |
DESKTOP_CREATEWINDOW (0x0002L) | Erforderlich, um ein Fenster auf dem Desktop zu erstellen. |
DESKTOP_ENUMERATE (0x0040L) | Erforderlich für die Aufzählung des Desktops. |
DESKTOP_HOOKCONTROL (0x0008L) | Erforderlich, um einen der Fensterhaken einzurichten. |
DESKTOP_JOURNALPLAYBACK (0x0020L) | Erforderlich, um die Journalwiedergabe auf einem Desktop auszuführen. |
DESKTOP_JOURNALRECORD (0x0010L) | Erforderlich zum Ausführen der Journalaufzeichnung auf einem Desktop. |
DESKTOP_READOBJECTS (0x0001L) | Erforderlich zum Lesen von Objekten auf dem Desktop. |
DESKTOP_SWITCHDESKTOP (0x0100L) | Erforderlich, um den Desktop mit der SwitchDesktop-Funktion zu aktivieren. |
DESKTOP_WRITEOBJECTS (0x0080L) | Erforderlich zum Schreiben von Objekten auf dem Desktop. |
Im Folgenden finden Sie die generischen Zugriffsrechte für ein Desktopobjekt, das in der interaktiven Fensterstation der Anmeldesitzung des Benutzers enthalten ist.
Zugriffsrecht | BESCHREIBUNG |
---|---|
GENERIC_READ |
DESKTOP_READOBJECTS STANDARD_RIGHTS_READ |
GENERIC_WRITE |
DESKTOP_CREATEWINDOW DESKTOP_HOOKCONTROL DESKTOP_JOURNALPLAYBACK DESKTOP_JOURNALRECORD DESKTOP_WRITEOBJECTS STANDARD_RIGHTS_WRITE |
GENERIC_EXECUTE |
STANDARD_RIGHTS_EXECUTE |
GENERIC_ALL |
DESKTOP_CREATEWINDOW DESKTOP_ENUMERATE DESKTOP_HOOKCONTROL DESKTOP_JOURNALPLAYBACK DESKTOP_JOURNALRECORD DESKTOP_READOBJECTS DESKTOP_SWITCHDESKTOP DESKTOP_WRITEOBJECTS STANDARD_RIGHTS_REQUIRED |
Sie können das ACCESS_SYSTEM_SECURITY Zugriffsrecht auf ein Desktopobjekt anfordern, wenn Sie die SACL des Objekts lesen oder schreiben möchten. Weitere Informationen finden Sie unter Zugriffssteuerungslisten (Access-Control Lists, ACLs) und SACL-Zugriffsberechtigung.