Partager via


structure WS_USERNAME_MESSAGE_SECURITY_BINDING (webservices.h)

Sous-type de liaison de sécurité permettant de spécifier l’utilisation d’une paire nom d’utilisateur/mot de passe fournie par l’application en tant que jeton de sécurité direct (par exemple, one-shot). Cette liaison de sécurité ne peut être utilisée qu’avec la sécurité des messages. Il fournit l’authentification client, mais pas la signature ou le chiffrement du trafic. Par conséquent, il est utilisé conjointement avec une autre liaison de sécurité de transport ou de sécurité des messages qui fournit une protection des messages.

Une seule instance de cette liaison peut être présente dans une description de sécurité. Cette liaison de sécurité n’est pas prise en charge avec le WS_NAMEDPIPE_CHANNEL_BINDING.

Avec cette liaison de sécurité, aucune propriété de liaison de sécurité ne peut être spécifiée.

Syntaxe

typedef struct _WS_USERNAME_MESSAGE_SECURITY_BINDING {
  WS_SECURITY_BINDING           binding;
  WS_MESSAGE_SECURITY_USAGE     bindingUsage;
  WS_USERNAME_CREDENTIAL        *clientCredential;
  WS_VALIDATE_PASSWORD_CALLBACK passwordValidator;
  void                          *passwordValidatorCallbackState;
} WS_USERNAME_MESSAGE_SECURITY_BINDING;

Membres

binding

Type de base duquel dérivent ce sous-type de liaison de sécurité et tous les autres sous-types de liaison de sécurité.

bindingUsage

Comment le jeton de sécurité correspondant à cette liaison de sécurité doit être lié à un message.

Seule WS_SUPPORTING_MESSAGE_SECURITY_USAGE est prise en charge. Avec cette utilisation, cette liaison de sécurité fournit l’authentification client, mais pas la protection des messages (comme la signature, le chiffrement, la détection de relecture). Par conséquent, cette liaison doit être utilisée avec une autre liaison de sécurité telle que la WS_SSL_TRANSPORT_SECURITY_BINDING qui fournit un canal protégé.

Pour utiliser cette liaison sur HTTP sans SSL, la propriété de description de la sécurité WS_SECURITY_PROPERTY_TRANSPORT_PROTECTION_LEVEL doit être explicitement définie sur WS_PROTECTION_LEVEL_NONE. Cela n’est pas pris en charge sur le client ou sur TCP.

clientCredential

Informations d’identification de nom d’utilisateur à utiliser avec cette liaison de sécurité. Cela doit être spécifié lorsque cette liaison de sécurité est utilisée sur le client.

passwordValidator

Validateur à utiliser pour case activée paires nom d’utilisateur/mot de passe reçues. Cela doit être spécifié lorsque cette liaison de sécurité est utilisée sur le service.

passwordValidatorCallbackState

État facultatif à passer en tant qu’argument lorsque le validateur de nom d’utilisateur est appelé.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
En-tête webservices.h