Méthode IServerSecurity ::QueryBlanket (objidlbase.h)
Récupère des informations sur le client qui a appelé l’une des méthodes du serveur.
Syntaxe
HRESULT QueryBlanket(
[out] DWORD *pAuthnSvc,
[out] DWORD *pAuthzSvc,
[out] OLECHAR **pServerPrincName,
[out] DWORD *pAuthnLevel,
[out] DWORD *pImpLevel,
[out] void **pPrivs,
[in, out] DWORD *pCapabilities
);
Paramètres
[out] pAuthnSvc
Pointeur vers le service d’authentification actuel. Il s’agit d’une valeur unique extraite de la liste des constantes de service d’authentification. Si l’appelant spécifie NULL, le service d’authentification actuel n’est pas récupéré.
[out] pAuthzSvc
Pointeur vers une variable qui reçoit le service d’autorisation actuel. Il s’agit d’une valeur unique de la liste des constantes d’autorisation. Si l’appelant spécifie NULL, le service d’autorisation actuel n’est pas récupéré.
[out] pServerPrincName
Nom du principal actuel. La chaîne est allouée par l’appelé à l’aide de CoTaskMemAlloc et doit être libérée par l’appelant à l’aide de CoTaskMemFree. Par défaut, les noms de principaux Schannel sont au format msstd. Le formulaire complet est retourné si EOAC_MAKE_FULLSIC est spécifié dans le paramètre pCapabilities . Pour plus d’informations sur les formulaires msstd et fullsic, consultez Noms principaux. Si l’appelant spécifie NULL, le nom du principal actuel n’est pas récupéré.
[out] pAuthnLevel
Pointeur vers une variable qui reçoit le niveau d’authentification actuel. Il s’agit d’une valeur unique extraite de la liste des constantes de niveau d’authentification. Si l’appelant spécifie NULL, le niveau d’authentification actuel n’est pas récupéré.
[out] pImpLevel
Ce paramètre doit avoir la valeur NULL.
[out] pPrivs
Informations sur les privilèges de l’application cliente. Le format de la structure à laquelle le handle fait référence dépend du service d’authentification. L’application ne doit pas écrire ou libérer la mémoire. Les informations ne sont valides que pendant la durée de l’appel en cours. Pour NTLMSSP et Kerberos, il s’agit d’une structure SEC_WINNT_AUTH_IDENTITY ou SEC_WINNT_AUTH_IDENTITY_EX . Pour Schannel, il s’agit d’une structure CERT_CONTEXT qui représente le certificat du client. Si le client n’a pas de certificat, null est retourné. Si l’appelant spécifie NULL, les informations de privilège actuelles ne sont pas récupérées.
[in, out] pCapabilities
Fonctionnalités de l’appel. Pour demander que le nom principal soit retourné sous forme complète si Schannel est le service d’authentification, l’appelant peut définir l’indicateur EOAC_MAKE_FULLSIC dans ce paramètre. Si l’appelant spécifie NULL, les fonctionnalités actuelles ne sont pas récupérées.
Valeur retournée
Cette méthode peut retourner les valeurs de retour standard E_INVALIDARG, E_OUTOFMEMORY et S_OK.
Remarques
QueryBlanket est utilisé par le serveur pour connaître le client qui a appelé l’une de ses méthodes. Pour obtenir un pointeur vers IServerSecurity pour l’appel en cours sur le thread actif, appelez CoGetCallContext, en spécifiant IID_IServerSecurity. Ce pointeur d’interface ne peut être utilisé que dans le même appartement que l’appel pendant la durée de l’appel.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | objidlbase.h (inclure ObjIdl.h) |