Funzione RtlConvertSidToUnicodeString (ntifs.h)
La routine RtlConvertSidToUnicodeString genera una rappresentazione di stringa Unicode stampabile di un SID (Security Identifier).
Sintassi
NTSYSAPI NTSTATUS RtlConvertSidToUnicodeString(
[in, out] PUNICODE_STRING UnicodeString,
[in] PSID Sid,
[in] BOOLEAN AllocateDestinationString
);
Parametri
[in, out] UnicodeString
Puntatore a una struttura UNICODE_STRING per contenere la stringa Unicode generata. Il membro UnicodeString-MaximumLength> viene impostato solo se AllocateDestinationString è TRUE.
[in] Sid
Puntatore alla struttura SID da convertire in Unicode (la struttura SID non è interessata).
[in] AllocateDestinationString
Flag booleano che indica se questa routine alloca il buffer UnicodeString. Se TRUE, viene allocato solo il membro UnicodeString-Buffer> e il resto della struttura UnicodeString deve essere allocato dal chiamante.
Valore restituito
La routine RtlConvertSidToUnicodeString può restituire uno dei valori seguenti:
Codice restituito | Descrizione |
---|---|
|
La conversione è riuscita. |
|
Viene restituito se AllocateDestinationString è FALSE e il buffer UnicodeString fornito dal chiamante è troppo piccolo per contenere la stringa Unicode convertita. |
|
Viene restituito se AllocateDestinationString è TRUE e memoria insufficiente per allocare il buffer UnicodeString . |
|
La struttura SID specificata non è strutturalmente valida. |
Commenti
La stringa Unicode generata assumerà una delle due forme. Se il valore del membro IdentifierAuthority del SID è minore o uguale a 2^32, il membro IdentifierAuthority verrà generato come decimale. Ad esempio, un SID con identificatoreAuthority di 281.736 genera:
S-1-281736-12-72-9-110
In caso contrario, l'identificatoreAuthority verrà generato come esadecimale. Ad esempio, un SID con identificatoreAuthority pari a 173.495.281.736 genera:
S-1-0x28651FE848-12-72-9-110
Tutti gli altri membri del SID verranno generati come decimali.
Se AllocateDestinationString è TRUE, il buffer allocato deve essere deallocato usando RtlFreeUnicodeString.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 |
Piattaforma di destinazione | Universale |
Intestazione | ntifs.h (include Ntifs.h, FltKernel.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |