Condividi tramite


Funzione RpcBindingInqAuthInfoA (rpcdce.h)

La funzione RpcBindingInqAuthInfo restituisce informazioni di autenticazione e autorizzazione da un handle di associazione.

Sintassi

RPC_STATUS RpcBindingInqAuthInfoA(
  RPC_BINDING_HANDLE       Binding,
  RPC_CSTR                 *ServerPrincName,
  unsigned long            *AuthnLevel,
  unsigned long            *AuthnSvc,
  RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,
  unsigned long            *AuthzSvc
);

Parametri

Binding

Handle di associazione server da cui vengono restituite le informazioni di autenticazione e autorizzazione.

ServerPrincName

Restituisce un puntatore a un puntatore al nome dell'entità di sicurezza previsto del server a cui fa riferimento in binding. Il contenuto del nome restituito e la relativa sintassi sono definiti dal servizio di autenticazione in uso.

Specificare un valore Null per impedire RpcBindingInqAuthInfo restituire il parametro ServerPrincName . In questo caso, l'applicazione non chiama la funzione RpcStringFree .

AuthnLevel

Restituisce un puntatore impostato sul livello di autenticazione utilizzato per le chiamate di routine remote effettuate utilizzando Binding. Vedere La nota.

Specificare un valore Null per impedire alla funzione di restituire il parametro AuthnLevel .

Il livello restituito nel parametro AuthnLevel può essere diverso dal livello specificato quando il client ha chiamato la funzione RpcBindingSetAuthInfo. Questa discrepanza si verifica quando la libreria di runtime RPC non supporta il livello di autenticazione specificato dal client e aggiorna automaticamente al livello di autenticazione superiore successivo.

AuthnSvc

Restituisce un puntatore impostato sul servizio di autenticazione specificato per le chiamate di procedura remota effettuate utilizzando Binding. Vedere La nota.

Specificare un valore Null per impedire RpcBindingInqAuthInfo restituire il parametro AuthnSvc.

AuthIdentity

Restituisce un puntatore a un handle per la struttura di dati che contiene le credenziali di autenticazione e autorizzazione del client specificate per le chiamate di procedura remota effettuate utilizzando Binding.

Specificare un valore Null per impedire rpcBindingInqAuthInfo restituire il parametro AuthIdentity .

AuthzSvc

Restituisce un puntatore impostato sul servizio di autorizzazione richiesto dall'applicazione client che ha effettuato la chiamata di procedura remota su Binding Vedere la nota.

Specificare un valore Null per impedire RpcBindingInqAuthInfo restituire il parametro AuthzSvc.

Nota Per un elenco dei servizi di autenticazione supportati da RPC, vedere Authentication-Service Costanti.
 

Valore restituito

Valore Significato
RPC_S_OK
Chiamata riuscita.
RPC_S_INVALID_BINDING
L'handle di associazione non è valido.
RPC_S_WRONG_KIND_OF_BINDING
Si tratta del tipo errato di associazione per l'operazione.
RPC_BINDING_HAS_NO_AUTH
L'associazione non dispone di informazioni di autenticazione.
 
Nota Per un elenco di codici di errore validi, vedere RPC Return Values.
 

Osservazioni

Un'applicazione client chiama la funzione rpcBindingInqAuthInfo per visualizzare le informazioni di autenticazione e autorizzazione associate a un handle di associazione server. Una funzione simile, RpcBindingInqAuthInfoEx fornisce inoltre informazioni sulla qualità del servizio di sicurezza sull'handle di associazione.

La libreria di runtime RPC alloca la memoria per il parametro ServerPrincName restituito. L'applicazione è responsabile della chiamata della funzione rpcStringFree per la stringa di argomento restituita.

Nota

L'intestazione rpcdce.h definisce RpcBindingInqAuthInfo 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 [app desktop | App UWP]
server minimo supportato Windows 2000 Server [app desktop | App UWP]
piattaforma di destinazione Finestre
intestazione rpcdce.h (include Rpc.h)
libreria Rpcrt4.lib
dll Rpcrt4.dll

Vedere anche

RpcBindingInqAuthClient

RpcBindingInqAuthInfoEx

RpcBindingInqOption

RpcBindingSetAuthInfo

RpcStringFree