Funzione RpcBindingInqAuthClientExA (rpcdce.h)
Un'applicazione server chiama la funzione rpcBindingInqAuthClientEx
Sintassi
RPC_STATUS RpcBindingInqAuthClientExA(
RPC_BINDING_HANDLE ClientBinding,
RPC_AUTHZ_HANDLE *Privs,
RPC_CSTR *ServerPrincName,
unsigned long *AuthnLevel,
unsigned long *AuthnSvc,
unsigned long *AuthzSvc,
unsigned long Flags
);
Parametri
ClientBinding
Handle di associazione client del client che ha effettuato la chiamata di procedura remota. Questo valore può essere zero. Vedere la sezione Osservazioni.
Privs
Restituisce un puntatore a un handle per le informazioni con privilegi per l'applicazione client che ha eseguito la chiamata di procedura remota sull'handle di associazione ClientBinding. Per chiamate ncalrpc, Privs contiene una stringa con il nome dell'entità del client.
L'applicazione server deve eseguire il cast del parametro Privs
Per altre informazioni sui provider di servizi di sicurezza, vedere provider di supporto della sicurezza (SSP).
ServerPrincName
Restituisce un puntatore a un puntatore al nome dell'entità server specificato dall'applicazione server che ha chiamato la funzione RpcServerRegisterAuthInfo. Il contenuto del nome restituito e la relativa sintassi sono definiti dal servizio di autenticazione in uso. Per SSP SCHANNEL, il nome dell'entità è in formato msstd. Per altre informazioni sul formato msstd, vedere nomi di entità.
Specificare un valore Null per impedire RpcBindingInqAuthClientEx restituire il parametro ServerPrincName. In questo caso, l'applicazione non chiama la funzione RpcStringFree
AuthnLevel
Restituisce un puntatore impostato sul livello di autenticazione richiesto dall'applicazione client che ha eseguito la chiamata di procedura remota sull'handle di associazione ClientBinding. Per un elenco dei livelli di autenticazione supportati da RPC, vedere Authentication-Level Costanti.
Specificare un valore Null per impedire
AuthnSvc
Restituisce un puntatore impostato sul servizio di autenticazione richiesto dall'applicazione client che ha eseguito la chiamata di procedura remota nell'handle di associazione ClientBinding. Per un elenco dei servizi di autenticazione supportati da RPC, vedere Authentication-Service Costanti.
Specificare un valore Null per impedire
AuthzSvc
Restituisce un puntatore impostato sul servizio di autorizzazione richiesto dall'applicazione client che ha eseguito la chiamata di procedura remota nell'handle di associazione
Specificare un valore Null per impedire RpcBindingInqAuthClientEx restituire il parametro AuthzSvc. Questo parametro non viene usato dal servizio di autenticazione RPC_C_AUTHN_WINNT. Il valore restituito sarà sempre RPC_S_AUTHZ_NONE.
Flags
Controlla il formato del nome dell'entità. Questo parametro può essere impostato sul valore seguente.
Valore | Significato |
---|---|
|
Restituisce il nome dell'entità in formato fullsic. |
Valore restituito
Valore | Significato |
---|---|
|
Chiamata riuscita. |
|
L'handle di associazione non è valido. |
|
Si tratta del tipo errato di associazione per l'operazione. |
|
L'associazione non dispone di informazioni di autenticazione. |
Osservazioni
Un'applicazione server chiama la funzione RpcBindingInqAuthClientEx per ottenere il nome dell'entità o gli attributi dei privilegi del client autenticato che ha effettuato la chiamata alla procedura remota. Inoltre, RpcBindingInqAuthClientEx restituisce il servizio di autenticazione, il livello di autenticazione e il nome dell'entità server specificati dal client. Il server può usare i dati restituiti a scopo di autorizzazione.
La libreria di runtime RPC alloca la memoria per il parametro ServerPrincName restituito. L'applicazione è responsabile della chiamata della funzione RpcStringFree
Per le chiamate RPC sincrone, l'applicazione server può usare zero come valore per il parametro ClientBinding. L'utilizzo di zero recupera le informazioni di autenticazione e autorizzazione dalla chiamata di procedura remota attualmente in esecuzione.
Nota
L'intestazione rpcdce.h definisce RpcBindingInqAuthClientEx come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 2000 Professional [solo app desktop] |
server minimo supportato | Windows 2000 Server [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
rpcdce.h (include Rpc.h) |
libreria |
Rpcrt4.lib |
dll | Rpcrt4.dll |