Ändern der Zugriffssicherheit für sicherungsfähige Objekte
Drucker, Dienste, Registrierungsschlüssel, DCOM-Anwendungen und WMI-Namespaces sind sicherungsfähige Objekte. Der Zugriff auf sicherungsfähige Objekte wird durch Sicherheitsdeskriptorengeschützt, die die Benutzer angeben, die Zugriff haben. Ab Windows Vista verfügen viele sicherungsfähige Objekte über Methoden zum Abrufen oder Festlegen des Sicherheitsdeskriptors. Mit den entsprechenden Berechtigungen können Sie Sicherheitsbeschreibungen für sicherungsfähige Objekte lesen oder ändern. Mit diesen Methoden können Sie steuern, welche Benutzerkonten oder Gruppen Zugriff auf einen Drucker, Dienst, WMI-Namespace oder ein anderes Objekt haben. Weitere Informationen zu Sicherheitsdeskriptoren und deren Verwendung in WMI finden Sie unter Zugriff auf sicherungsfähige WMI-Objekte.
In diesem Thema werden die folgenden Abschnitte erläutert:
- Objekte und Sicherheitsbeschreibungsmethoden
- Konvertieren zwischen Sicherheitsbeschreibungsformaten
- Sicherheitsprobleme
- Zugehörige Themen
Objekte und Sicherheitsbeschreibungsmethoden
Die folgende Liste enthält die Methoden, mit denen sicherungsfähige Objekte den Sicherheitsdeskriptor lesen oder ändern können:
WMI-Namespaces
Ein Anbieter kann Sicherheit einrichten, die nur bestimmten Gruppen zugriff auf die Daten in einem WMI-Namespace zulässt. Die Namespacesicherheit wird durch Methoden der _ _ SystemSecurity-Klasse gesteuert. Ab Windows Vista geben die Methoden GetSecurityDescriptor und SetSecurityDescriptor _ _ SecurityDescriptor-Objekte zurück und schreiben sie. Weitere Informationen finden Sie unter Festlegen von Namespacesicherheitsdeskriptoren.
Registrierungsschlüssel
Ab Windows Vista können Sie Registrierungsschlüssel schützen, sodass sie nicht von nicht autorisierten Benutzern geändert werden können. Die StdRegProv-Klasse verfügt über die Methoden GetSecurityDescriptor und SetSecurityDescriptor. Diese Methoden geben Win32 _ SecurityDescriptor-Objekte zurück und schreiben sie.
Drucker
Ab Windows Vista können Sie den Zugriff auf Instanzen der Win32 _ Printer-Klasse mithilfe der Methoden GetSecurityDescriptor und SetSecurityDescriptor sichern. Diese Methoden geben Win32 _ SecurityDescriptor-Objekte zurück und schreiben sie.
Dienste
Ab Windows Vista können Sie den Zugriff auf Instanzen der Win32-Dienstklasse _ mithilfe der Methoden GetSecurityDescriptor und SetSecurityDescriptor sichern. Diese Methoden geben Win32 _ SecurityDescriptor-Objekte zurück und schreiben sie.
DCOM-Anwendungen
DCOM-Anwendungsinstanzen verfügen über mehrere Sicherheitsbeschreibungen. Verwenden Sie ab Windows Vista Methoden der Win32 _ DCOMApplicationSetting-Klasse, um die verschiedenen Sicherheitsbeschreibungen zu erhalten oder zu ändern. Sicherheitsdeskriptoren werden als Instanzen der Win32 _ SecurityDescriptor-Klasse zurückgegeben.
Um die Konfigurationsberechtigungen zu erhalten oder zu ändern, rufen Sie die Methoden GetConfigurationSecurityDescriptor oder SetConfigurationSecurityDescriptor auf.
Um die Zugriffsberechtigungen zu erhalten oder zu ändern, rufen Sie die Methoden GetAccessSecurityDescriptor oder SetAccessSecurityDescriptor auf.
Um die Start- und Aktivierungsberechtigungen zu erhalten oder zu ändern, rufen Sie die Methoden GetLaunchSecurityDescriptor oder SetLaunchSecurityDescriptor auf.
Files
Die Methoden GetSecurityDescriptor und SetSecurityDescriptor befinden sich in der Win32 _ LogicalFileSecuritySetting-Klasse und nicht in der CIM _ DataFile-Klasse.
Freigaben
Die Methoden GetSecurityDescriptor und SetSecurityDescriptor befinden sich in der Win32 _ LogicalShareSecuritySetting-Klasse und nicht in der Win32 _ Share-Klasse.
Hinweis
Wenn keine neue Security Access Control List (SACL) in einem Aufruf einer SetSecurityDescriptor-Methode angegeben wird, wird die Sicherheitsbeschreibung SACL für das sicherungsfähige Zielobjekt auf NULL festgelegt, sodass die vorherige SACL-Einstellung nicht beibehalten wird.
Konvertieren zwischen Sicherheitsbeschreibungsformaten
Sicherheitsdeskriptoren sind komplexe binäre Bytearrays, die normalerweise in C++ erstellt und geändert werden müssen. Nachdem Sie eine der Get-Methoden verwendet haben, um den Sicherheitsdeskriptor zu erhalten, stellt die Win32 _ SecurityDescriptorHelper-Klasse Methoden zur Konvertierung von Sicherheitsdeskriptoren entweder in Security Descriptor Definition Language (SDDL) oder in Win32 _ SecurityDescriptor-Instanzen zur Verwendung.
Sie können die Access Control Listen (ACL) einfacher in Win32 _ SecurityDescriptor-Instanzen oder in SDDL bearbeiten. Weitere Informationen zur Struktur und Verwendung von Sicherheitsdeskriptoren in WMI finden Sie unter WMI-Sicherheitsdeskriptorobjekte.
Verwenden Sie in C++ oder C# Konvertierungsfunktionen, um binäre Sicherheitsdeskriptoren in SDDL (Security Descriptor Definition Language) zu konvertieren. Verwenden Sie ConvertSecurityDescriptorToStringSecurityDescriptor und ConvertStringSecurityDescriptorToSecurityDescriptor,um Sicherheitsdeskriptorwerte in C++-Anwendungen zu ändern.
Sicherheitsprobleme
Es wird empfohlen, Änderungen an Sicherheitsdeskriptoren mit großer Vorsicht vorzunehmen, damit die Sicherheit des Objekts nicht beeinträchtigt wird. Beachten Sie, dass sich die Reihenfolge der Zugriffssteuerungseinträge (ACCESS Control Entries, ACEs) in einer DACL (Discretionary Access Control List) auf die Zugriffssicherheit auswirken kann. Weitere Informationen finden Sie unter Reihenfolge der ACEs in einer DACL.