RpcBindingInqAuthClientExW, fonction (rpcdce.h)
Une application serveur appelle la fonction RpcBindingInqAuthClientEx pour obtenir des informations étendues sur le programme client qui a effectué l’appel de procédure distante.
Syntaxe
RPC_STATUS RpcBindingInqAuthClientExW(
RPC_BINDING_HANDLE ClientBinding,
RPC_AUTHZ_HANDLE *Privs,
RPC_WSTR *ServerPrincName,
unsigned long *AuthnLevel,
unsigned long *AuthnSvc,
unsigned long *AuthzSvc,
unsigned long Flags
);
Paramètres
ClientBinding
Handle de liaison client du client qui a effectué l’appel de procédure distante. Cette valeur peut être égale à zéro. Voir les remarques.
Privs
Retourne un pointeur vers un handle vers les informations privilégiées de l’application cliente qui a effectué l’appel de procédure distante sur le handle de liaison ClientBinding. Pour appels de ncalrpc, Privs contient une chaîne avec le nom principal du client.
L’application serveur doit caster le paramètre Privs sur le type de données spécifié par le paramètre AuthnSvc. Les données référencées par cet argument sont en lecture seule et ne doivent pas être modifiées par l’application serveur. Si le serveur souhaite conserver l’une des données retournées, le serveur doit copier les données dans la mémoire allouée au serveur.
Pour plus d’informations sur les fournisseurs SSP, consultez fournisseurs de support de sécurité (SSP).
ServerPrincName
Retourne un pointeur vers un pointeur vers le nom du principal du serveur spécifié par l’application serveur qui a appelé la fonction RpcServerRegisterAuthInfo. Le contenu du nom retourné et sa syntaxe sont définis par le service d’authentification en cours d’utilisation. Pour le SSP SCHANNEL, le nom du principal est au format msstd. Pour plus d’informations sur le format msstd, consultez noms de principaux.
Spécifiez une valeur Null pour empêcher RpcBindingInqAuthClientEx de retourner le paramètre ServerPrincName. Dans ce cas, l’application n’appelle pas la fonction RpcStringFree.
AuthnLevel
Retourne un pointeur défini sur le niveau d’authentification demandé par l’application cliente qui a effectué l’appel de procédure distante sur le handle de liaison ClientBinding. Pour obtenir la liste des niveaux d’authentification pris en charge par RPC, consultez Authentication-Level Constantes.
Spécifiez une valeur null pour empêcher RpcBindingInqAuthClientEx de retourner le paramètre AuthnLevel.
AuthnSvc
Retourne un pointeur défini sur le service d’authentification demandé par l’application cliente qui a effectué l’appel de procédure distante sur le handle de liaison ClientBinding. Pour obtenir la liste des services d’authentification pris en charge par RPC, consultez Authentication-Service constantes.
Spécifiez une valeur Null pour empêcher RpcBindingInqAuthClientEx de retourner le paramètre AuthnSvc.
AuthzSvc
Retourne un pointeur défini sur le service d’autorisation demandé par l’application cliente qui a effectué l’appel de procédure distante sur le handle de liaison liaison
Spécifiez une valeur null pour empêcher RpcBindingInqAuthClientEx de retourner le paramètre AuthzSvc. Ce paramètre n’est pas utilisé par le service d’authentification RPC_C_AUTHN_WINNT. La valeur retournée est toujours RPC_S_AUTHZ_NONE.
Flags
Contrôle le format du nom du principal. Ce paramètre peut être défini sur la valeur suivante.
Valeur | Signification |
---|---|
|
Renvoie le nom du principal au format complet. |
Valeur de retour
Valeur | Signification |
---|---|
|
L’appel a réussi. |
|
Le handle de liaison n’était pas valide. |
|
Il s’agissait du mauvais type de liaison pour l’opération. |
|
La liaison n’a aucune information d’authentification. |
Remarques
Une application serveur appelle la fonction RpcBindingInqAuthClientEx pour obtenir le nom principal ou les attributs de privilège du client authentifié qui a effectué l’appel de procédure distante. En outre, RpcBindingInqAuthClientEx retourne le service d’authentification, le niveau d’authentification et le nom du principal du serveur spécifiés par le client. Le serveur peut utiliser les données retournées à des fins d’autorisation.
La bibliothèque d’exécution RPC alloue de la mémoire pour le paramètre ServerPrincName retourné. L’application est chargée d’appeler la fonction RpcStringFree pour la chaîne d’argument retournée.
Pour les appels RPC synchrones, l’application serveur peut utiliser zéro comme valeur pour le paramètre ClientBinding. L’utilisation de zéro récupère les informations d’authentification et d’autorisation de l’appel de procédure distante en cours d’exécution.
Note
L’en-tête rpcdce.h définit RpcBindingInqAuthClientEx comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
serveur minimum pris en charge | Windows 2000 Server [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | rpcdce.h (inclure Rpc.h) |
bibliothèque | Rpcrt4.lib |
DLL | Rpcrt4.dll |