Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die MOF-Datei (Managed Object Format), die einen Namespace erstellt, kann auch die Sicherheitsdeskriptoren für den Namespace definieren, indem sie den NamespaceSecuritySDDL-Qualifizierer mit dem Sicherheitsdeskriptor im SDDL-Format (Security Descriptor Definition Language) einschließen.
Sie können NamespaceSecuritySDDL verwenden, um einen beliebigen Namespace zu sichern. Sie können diesen Qualifizierer auch in einer einfachen MOF-Datei verwenden, um den Sicherheitsdeskriptor in einem vorhandenen Namespace zu ändern. Die SDDL-Zeichenfolge wird von WMI verarbeitet, um die Namespacesicherheit einzurichten, aber nicht als Zeichenfolge gespeichert. Wenn kein Sicherheitsdeskriptor angegeben ist, wird die Standardsicherheit verwendet. Weitere Informationen finden Sie unter Festlegen von Namespacesicherheitsdeskriptoren.
Die folgende Prozedur legt den Sicherheitsdeskriptor für den Namespace "root\MyNamespace " fest. Die SDDL-Zeichenfolge bestimmt den Besitzer und die Gruppe als authentifizierte Benutzer und legt eine diskretionäre Zugriffssteuerungsliste (DACL) fest, die von untergeordneten Namespaces geerbt wird. Die DACL ermöglicht es dem Benutzer, Daten zu lesen, Methoden auszuführen, Daten in Anbieterklassen zu schreiben und Remotezugriff zu verwenden: WBEM_ENABLE, WBEM_METHOD_EXECUTE, WBEM_WRITE_PROVIDER, WBEM_REMOTE_ACCESS. Weitere Informationen finden Sie unter Zugriff auf WMI-Namespaces.
So legen Sie einen DACL-Namespace fest
Erstellen Sie eine MOF-Datei (Managed Object Format), oder ändern Sie Ihre vorhandene MOF-Datei, die den Namespace definiert, um den NamespaceSecuritySDDL-Qualifizierer mit der SDDL-Zeichenfolge hinzuzufügen.
Das folgende Codebeispiel zeigt, dass der zu ändernde Namespace "root\MyNamespace" lautet, und die Datei heißt MyNamespace_security.mof.
#pragma autorecover #pragma namespace("\\\\.\\root") [NamespaceSecuritySDDL ("O:BAG:BAD:(A;CI;0x60003;;;WD)")] Instance of __Namespace { Name = "MyNamespace"; };Beachten Sie, dass bei der SDDL-Zeichenfolge die Groß-/Kleinschreibung beachtet wird: Die Buchstaben müssen großgeschrieben werden.
Das folgende Codebeispiel zeigt die Buchstaben "o" und "g" in der SDDL-Zeichenfolge als Kleinbuchstaben und führt dazu, dass Mofcomp.exe einen Fehler zurückgibt.
#pragma autorecover #pragma namespace("\\\\.\\root") [NamespaceSecuritySDDL("o:BAg:BAD:(A;CI;0x60003;;;WD)")] Instance of __Namespace { Name = "MyNamespace"; };Führen Sie Mofcomp.exe aus, um die MOF-Datei zu kompilieren.
c:\mofcomp MyNamespace_security.mof
Verwenden Sie in C++ die IMoFCompiler-Methoden .
Wenn der Versuch, den DACL-Namespace festzulegen, fehlschlägt, sollten Sie die folgenden Fehlermeldungen berücksichtigen:
Fehler BESCHREIBUNG WBEM_E_INVALID_PARAMETER Es gibt keine geerbte DACL. Alternativ hat der Aufrufer die DACL oder die SD im übergeordneten Namespace verletzt. WBEM_E_ACCESS_DENIED Der Aufrufer verfügt nicht über die Berechtigung zum Aktualisieren der SDDL in MOF.
Zugehörige Themen