ConvertStringSecurityDescriptorToSecurityDescriptorW-Funktion (sddl.h)
Die ConvertStringSecurityDescriptorToSecurityDescriptor-Funktion konvertiert einen Sicherheitsdeskriptor im Zeichenfolgenformat in einen gültigen, funktionalen Sicherheitsdeskriptor. Diese Funktion ruft einen Sicherheitsdeskriptor ab, den die ConvertSecurityDescriptorToStringSecurityDescriptor-Funktion in das Zeichenfolgenformat konvertiert hat.
Syntax
BOOL ConvertStringSecurityDescriptorToSecurityDescriptorW(
[in] LPCWSTR StringSecurityDescriptor,
[in] DWORD StringSDRevision,
[out] PSECURITY_DESCRIPTOR *SecurityDescriptor,
[out] PULONG SecurityDescriptorSize
);
Parameter
[in] StringSecurityDescriptor
Ein Zeiger auf eine NULL-endende Zeichenfolge, die den zu konvertierenden Sicherheitsdeskriptor im Zeichenfolgenformat enthält.
[in] StringSDRevision
Gibt die Revisionsebene der StringSecurityDescriptor-Zeichenfolge an. Derzeit muss dieser Wert SDDL_REVISION_1 sein.
[out] SecurityDescriptor
Ein Zeiger auf eine Variable, die einen Zeiger auf den konvertierten Sicherheitsdeskriptor empfängt. Der zurückgegebene Sicherheitsdeskriptor ist selbstrelativer. Um den zurückgegebenen Puffer freizugeben, rufen Sie die Funktion LocalFree auf . Verwenden Sie die MakeAbsoluteSD-Funktion, um den Sicherheitsdeskriptor in einen absoluten Sicherheitsdeskriptor zu konvertieren.
[out] SecurityDescriptorSize
Ein Zeiger auf eine Variable, die die Größe des konvertierten Sicherheitsdeskriptors in Bytes empfängt. Dieser Parameter kann NULL sein.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf. GetLastError gibt möglicherweise einen der folgenden Fehlercodes zurück.
Rückgabecode | Beschreibung |
---|---|
|
Ein Parameter ist nicht gültig. |
|
Die SDDL-Revisionsebene ist ungültig. |
|
Eine Sicherheits-ID (SID) in der Eingabe-Sicherheitsbeschreibungszeichenfolge konnte in einem Kontosuchvorgang nicht gefunden werden. |
Hinweise
Wenn ace_type ACCESS_ALLOWED_OBJECT_ACE_TYPE ist und weder object_guid noch inherit_object_guid eine GUID angegeben ist, konvertiert ConvertStringSecurityDescriptorToSecurityDescriptorToSecurityDescriptorace_type in ACCESS_ALLOWED_ACE_TYPE. Informationen zu den Feldern ace_type, object_guid und inherit_object_guid finden Sie unter Ace Strings.
Hinweis
Der sddl.h-Header definiert ConvertStringSecurityDescriptorToSecurityDescriptor als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | sddl.h |
Bibliothek | Advapi32.lib |
DLL | Advapi32.dll |
Weitere Informationen
Grundlegende Access Control-Funktionen