Freigeben über


ConvertStringSecurityDescriptorToSecurityDescriptorA-Funktion (sddl.h)

Die ConvertStringSecurityDescriptorToSecurityDescriptor-Funktion konvertiert ein Zeichenfolgenformat Sicherheitsdeskriptor in einen gültigen, funktionalen Sicherheitsdeskriptor. Diese Funktion ruft einen Sicherheitsdeskriptor ab, der vom ConvertSecurityDescriptorToStringSecurityDescriptor in ein Zeichenfolgenformat konvertierte Funktion.

Syntax

BOOL ConvertStringSecurityDescriptorToSecurityDescriptorA(
  [in]  LPCSTR               StringSecurityDescriptor,
  [in]  DWORD                StringSDRevision,
  [out] PSECURITY_DESCRIPTOR *SecurityDescriptor,
  [out] PULONG               SecurityDescriptorSize
);

Parameter

[in] StringSecurityDescriptor

Ein Zeiger auf eine mit Null beendete Zeichenfolge, die den sicherheitsdeskriptor Zeichenfolgenformat enthält, konvertiert werden soll.

[in] StringSDRevision

Gibt die Revisionsebene des StringSecurityDescriptor Zeichenfolge an. Derzeit muss dieser Wert SDDL_REVISION_1 werden.

[out] SecurityDescriptor

Ein Zeiger auf eine Variable, die einen Zeiger auf den konvertierten Sicherheitsdeskriptor empfängt. Der zurückgegebene Sicherheitsdeskriptor ist selbstrelativen. Rufen Sie zum Freigeben des zurückgegebenen Puffers die funktion LocalFree auf. Wenn Sie die Sicherheitsbeschreibung in einen absoluten Sicherheitsdeskriptorkonvertieren möchten, verwenden Sie die MakeAbsoluteSD--Funktion.

[out] SecurityDescriptorSize

Ein Zeiger auf eine Variable, die die Größe des konvertierten Sicherheitsdeskriptors in Byte empfängt. Dieser Parameter kann NULL sein.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten. GetLastError- kann einen der folgenden Fehlercodes zurückgeben.

Rückgabecode Beschreibung
ERROR_INVALID_PARAMETER
Ein Parameter ist ungültig.
ERROR_UNKNOWN_REVISION
Die SDDL-Revisionsebene ist ungültig.
ERROR_NONE_MAPPED
Ein Sicherheitsbezeichner (SID) in der Eingabesicherheitsbeschreibungszeichenfolge konnte in einem Kontosuchevorgang nicht gefunden werden.

Bemerkungen

Wenn ace_type ACCESS_ALLOWED_OBJECT_ACE_TYPE ist und weder object_guid noch inherit_object_guid eine GUID angegeben hat, werden ConvertStringSecurityDescriptorToSecurityDescriptorToSecurityDescriptorace_type in ACCESS_ALLOWED_ACE_TYPE konvertiert. Informationen zu den Feldern ace_type, object_guidund inherit_object_guid finden Sie unter Ace Strings.

Anmerkung

Der sddl.h-Header definiert ConvertStringSecurityDescriptorToSecurityDescriptor als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch 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
mindestens unterstützte Client- Windows XP [Desktop-Apps | UWP-Apps]
mindestens unterstützte Server- Windows Server 2003 [Desktop-Apps | UWP-Apps]
Zielplattform- Fenster
Header- sddl.h
Library Advapi32.lib
DLL- Advapi32.dll

Siehe auch

Übersicht über die Zugriffssteuerung

grundlegende Zugriffssteuerungsfunktionen

ConvertSecurityDescriptorToStringSecurityDescriptor-

ConvertSidToStringSid-

ConvertStringSidToSid-

MakeAbsoluteSD-

SECURITY_DESCRIPTOR