Freigeben über


RtlConvertSidToUnicodeString-Funktion (ntifs.h)

Die RtlConvertSidToUnicodeString-Routine generiert eine druckbare Unicode-Zeichenfolgendarstellung einer Sicherheits-ID (SID).

Syntax

NTSYSAPI NTSTATUS RtlConvertSidToUnicodeString(
  [in, out] PUNICODE_STRING UnicodeString,
  [in]      PSID            Sid,
  [in]      BOOLEAN         AllocateDestinationString
);

Parameter

[in, out] UnicodeString

Ein Zeiger auf eine UNICODE_STRING Struktur, die die generierte Unicode-Zeichenfolge enthält. Das UnicodeString-MaximumLength-Element> wird nur festgelegt, wenn AllocateDestinationStringauf TRUE festgelegt ist.

[in] Sid

Ein Zeiger auf die SID-Struktur, die in Unicode konvertiert werden soll (die SID-Struktur ist nicht betroffen).

[in] AllocateDestinationString

Ein boolesches Flag, das angibt, ob diese Routine den UnicodeString-Puffer zuordnet. Bei TRUE wird nur der UnicodeString-Buffer-Member> zugeordnet, und der Rest der UnicodeString-Struktur muss vom Aufrufer zugeordnet werden.

Rückgabewert

Die RtlConvertSidToUnicodeString-Routine kann einen der folgenden Werte zurückgeben:

Rückgabecode Beschreibung
STATUS_SUCCESS
Die Konvertierung war erfolgreich.
STATUS_BUFFER_OVERFLOW
Dies wird zurückgegeben, wenn AllocateDestinationStringAUF FALSE festgelegt ist und der vom Aufrufer bereitgestellte UnicodeString-Puffer zu klein ist, um die konvertierte Unicode-Zeichenfolge zu speichern.
STATUS_NO_MEMORY
Dies wird zurückgegeben, wenn AllocateDestinationStringTRUE ist und nicht genügend Arbeitsspeicher zum Zuordnen des UnicodeString-Puffers vorhanden ist.
STATUS_INVALID_SID
Die angegebene SID-Struktur ist strukturell ungültig.

Hinweise

Die generierte Unicode-Zeichenfolge hat eine von zwei Formen. Wenn der Wert des IdentifierAuthority-Elements der SID kleiner oder gleich 2^32 ist, wird das IdentifierAuthority-Element als dezimal generiert. Beispielsweise generiert eine SID mit dem IdentifierAuthority-Wert 281.736 Folgendes:

 S-1-281736-12-72-9-110

Andernfalls wird die IdentifierAuthority als Hexadezimal generiert. Beispielsweise generiert eine SID mit einer IdentifierAuthority von 173.495.281.736 Folgendes:

 S-1-0x28651FE848-12-72-9-110

Alle anderen Member in der SID werden als Dezimalstellen generiert.

Wenn AllocateDestinationStringTRUE ist, muss die Zuordnung des zugeordneten Puffers mithilfe von RtlFreeUnicodeString aufgehoben werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000
Zielplattform Universell
Header ntifs.h (include Ntifs.h, FltKernel.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Weitere Informationen

RtlFreeUnicodeString

SID

UNICODE_STRING