Procédure : sécuriser des messages au sein de sessions fiables
Cette rubrique décrit les étapes requises pour activer la sécurité au niveau du message pour les messages échangés dans une session fiable utilisant l’une des liaisons fournies par le système qui prennent en charge une telle session, mais pas par défaut. Vous pouvez activer une session fiable sécurisée soit de façon impérative en utilisant le code, soit de façon déclarative dans le fichier de configuration. Cette procédure utilise le client et les fichiers de configuration du service pour activer la session fiable sécurisée.
La procédure inclut les trois tâches clés suivantes :
Spécifiez que le client et le service échangent des messages dans une session fiable.
Requérez la sécurité au niveau du message dans la session fiable.
Spécifiez le type d'informations d'identification que le client doit utiliser pour être authentifié auprès du service.
Il est important, dans la première tâche, que l’élément de configuration du point de terminaison contienne un attribut bindingConfiguration
qui référence une configuration de liaison nommée (dans cet exemple) MessageSecurity
. L’élément de configuration <binding> fait ensuite référence à ce nom pour activer les sessions fiables en définissant l’attribut enabled
de l’élément <reliableSession> sur true
. Vous pouvez requérir que les assurances de remise ordonnée soient disponibles dans une session fiable en affectant à l'attribut ordered
la valeur true
.
Pour la copie source de l’exemple sur lequel cette procédure de configuration est basée, consultez Session fiable WS.
Les éléments essentiels de la deuxième tâche sont accomplis en affectant à l’attribut mode
de l’élément <security> contenu dans l’élément <binding> du client et du service la valeur Message
.
Les éléments essentiels de la troisième tâche sont accomplis en affectant à l’attribut clientCredentialType
de l’élément <message> contenu dans l’élément <security> du client et du service la valeur Certificate
.
Notes
Lors de l’utilisation de la sécurité de message avec les sessions fiables, la messagerie fiable essaie de l’authentifier jusqu’à l’expiration du délai au lieu de lever une exception au premier échec.
Configurer le service avec une liaison WSHttpBinding pour utiliser une session fiable
Cette procédure est décrite dans la Procédure : échanger des messages au sein d’une session fiable.
Configurer le client avec une liaison WSHttpBinding pour utiliser une session fiable
Cette procédure est décrite dans la Procédure : échanger des messages au sein d’une session fiable.
Définir le mode et la propriété ClientCredentialType dans la configuration
Ajoutez un élément de liaison approprié à l'élément <bindings> du fichier de configuration. L’exemple suivant ajoute un élément <wsHttpBinding>.
Ajoutez un élément <binding>, puis affectez à son attribut
name
une valeur appropriée. L’exemple utilise le nomMessageSecurity
.Ajoutez un élément <security>, puis affectez à l’attribut
mode
la valeurMessage
.Dans l’élément <security>, ajoutez un élément <message> et définissez l’attribut
clientCredentialType
surCertificate
.
<wsHttpBinding>
<binding name="MessageSecurity">
<security mode="Message">
<message clientCredentialType="Certificate" />
</security>
</binding>
</wsHttpBinding>