Funzione PrivilegeCheck (securitybaseapi.h)
La funzione PrivilegeCheck determina se un set specificato di privilegi è abilitato in un token di accesso. La funzione PrivilegeCheck viene in genere chiamata da un'applicazione server per controllare i privilegi del token di accesso di un client.
Sintassi
BOOL PrivilegeCheck(
[in] HANDLE ClientToken,
[in, out] PPRIVILEGE_SET RequiredPrivileges,
[out] LPBOOL pfResult
);
Parametri
[in] ClientToken
Handle di un token di accesso che rappresenta un processo client. Questo handle deve essere stato ottenuto aprendo il token di un thread che rappresenta il client. Il token deve essere aperto per l'accesso TOKEN_QUERY.
[in, out] RequiredPrivileges
Puntatore a una struttura PRIVILEGE_SET . Il membro Privilege di questa struttura è una matrice di strutture LUID_AND_ATTRIBUTES . Prima di chiamare PrivilegeCheck, usare la matrice Privilege per indicare il set di privilegi da controllare. Impostare il membro Control su PRIVILEGE_SET_ALL_NECESSARY se è necessario abilitare tutti i privilegi; o impostarlo su zero se è sufficiente abilitare uno dei privilegi.
Quando PrivilegeCheck viene restituito, il membro Attributes di ogni struttura LUID_AND_ATTRIBUTES viene impostato su SE_PRIVILEGE_USED_FOR_ACCESS se il privilegio corrispondente è abilitato.
[out] pfResult
Puntatore a un valore impostato dalla funzione per indicare se uno o tutti i privilegi specificati sono abilitati nel token di accesso. Se il membro Control della struttura PRIVILEGE_SET specifica PRIVILEGE_SET_ALL_NECESSARY, questo valore è TRUE solo se tutti i privilegi sono abilitati; in caso contrario, questo valore è TRUE se uno dei privilegi è abilitato.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è diverso da zero.
Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
Un token di accesso contiene un elenco dei privilegi mantenuti dall'account associato al token. Questi privilegi possono essere abilitati o disabilitati; la maggior parte è disabilitata per impostazione predefinita. La funzione PrivilegeCheck controlla solo i privilegi abilitati. Per ottenere un elenco di tutti i privilegi abilitati e disabilitati detenuti da un token di accesso, chiamare la funzione GetTokenInformation . Per abilitare o disabilitare un set di privilegi in un token di accesso, chiamare la funzione AdjustTokenPrivileges .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | securitybaseapi.h (include Windows.h) |
Libreria | Advapi32.lib |
DLL | Advapi32.dll |
Vedi anche
Funzioni di Controllo di accesso client/server