Funzione RpcBindingInqAuthClient (rpcdce.h)
Un'applicazione server chiama la funzione RpcBindingInqAuthClient per ottenere il nome dell'entità o gli attributi dei privilegi del client autenticato che ha effettuato la chiamata alla procedura remota.
Sintassi
RPC_STATUS RpcBindingInqAuthClient(
RPC_BINDING_HANDLE ClientBinding,
RPC_AUTHZ_HANDLE *Privs,
RPC_WSTR *ServerPrincName,
unsigned long *AuthnLevel,
unsigned long *AuthnSvc,
unsigned long *AuthzSvc
);
Parametri
ClientBinding
Handle di associazione client del client che ha effettuato la chiamata alla procedura remota. Il 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 alla procedura remota nell'handle di associazione ClientBinding . Per le chiamate ncalrpc , Privs contiene una stringa con il nome dell'entità del client.
I dati a cui fa riferimento questo parametro sono di sola lettura e non devono essere modificati dall'applicazione server. Se il server vuole mantenere uno dei dati restituiti, il server deve copiare i dati nella memoria allocata dal server.
I dati a cui punta il parametro Privs provengono direttamente dal provider di servizi condivisi. Pertanto, il formato dei dati è specifico del provider di servizi condivisi. Per altre informazioni sui provider di servizi di configurazione, vedere Security Support Providers (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 il provider di servizi condivisi SCHANNEL, il nome dell'entità è in formato Microsoft Standard (msstd). Per altre informazioni sul formato msstd, vedere Principal Names.For further information on msstd format, see Principal Names.
Specificare un valore Null per impedire a RpcBindingInqAuthClient di 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 effettuato la chiamata di procedura remota sull'handle di associazione ClientBinding .
Specificare un valore Null per impedire a RpcBindingInqAuthClient di restituire il parametro AuthnLevel .
AuthnSvc
Restituisce un puntatore impostato sul servizio di autenticazione richiesto dall'applicazione client che ha effettuato la chiamata di procedura remota sull'handle di associazione ClientBinding . Per un elenco dei livelli di autenticazione supportati da RPC, vedere Costanti a livello di autenticazione.
Specificare un valore Null per impedire a RpcBindingInqAuthClient di restituire il parametro AuthnSvc .
AuthzSvc
Restituisce un puntatore impostato sul servizio di autorizzazione richiesto dall'applicazione client che ha effettuato la chiamata di procedura remota sull'handle di associazione ClientBinding .
Specificare un valore Null per impedire a RpcBindingInqAuthClient di restituire il parametro AuthzSvc . Questo parametro non viene usato dal servizio di autenticazione RPC_C_AUTHN_WINNT. Il valore restituito sarà sempre RPC_C_AUTHZ_NONE.
Valore restituito
Valore | Significato |
---|---|
|
La chiamata ha avuto esito positivo. |
|
Handle di associazione non valido. |
|
Si tratta del tipo di binding errato per l'operazione. |
|
L'associazione non contiene informazioni di autenticazione. |
Commenti
Un'applicazione server chiama la funzione RpcBindingInqAuthClient per ottenere il nome dell'entità o gli attributi dei privilegi del client autenticato che ha effettuato la chiamata alla procedura remota. RpcBindingInqAuthClient restituisce anche 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 memoria per il parametro ServerPrincName restituito. L'applicazione è responsabile della chiamata della funzione RpcStringFree per la stringa di argomento restituita.
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.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | rpcdce.h (include Rpc.h) |
Libreria | Rpcrt4.lib |
DLL | Rpcrt4.dll |