|
Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte.
|
Traduction
Source
|
Comment : créer une liaison personnalisée à l'aide de SecurityBindingElement
Attention
|
|---|
|
|
-
Mode de sécurité -
Protocole de transport -
Modèle d'échange de messages (MEP) spécifié dans le contrat
|
|
|
|
|
|
|---|---|---|---|---|
|
|
|
Datagram |
Request Reply |
Duplex |
|
|
|
|||
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
Pour créer une liaison personnalisée qui utilise SymmetricSecurityBindingElement
-
Créez une instance de la classe BindingElementCollection portant le nom outputBec. -
Appelez la méthode statique M:System.ServiceModel.Channels.SecurityBindingElement.CreateSspiNegotiationBindingElement(true), qui retourne une instance de la classe SymmetricSecurityBindingElement. -
Ajoutez SymmetricSecurityBindingElement à la collection (outputBec) en appelant la méthode Add de Collection<T> de la classe BindingElement. -
Créez une instance de la classe TextMessageEncodingBindingElement et ajoutez-la à la collection (outputBec). Cela spécifie l'encodage utilisé par la liaison. -
Créez un HttpTransportBindingElement et ajoutez-le à la collection outputBec. Cela indique que la liaison utilise le transport HTTP. -
Créez une liaison personnalisée en créant une instance de la classe CustomBinding et en passant la collection outputBec au constructeur. -
La liaison personnalisée résultante partage un grand nombre des caractéristiques de WSHttpBinding. Elle spécifie la sécurité au niveau du message et les informations d'identification Windows, mais désactive les sessions sécurisées, requiert que les informations d'identification du service soient spécifiées hors bande, et ne chiffre pas de signature. La dernière ne peut être contrôlée que par la définition de la propriété MessageProtectionOrder, tel qu'indiqué à l'étape 4. Les deux autres peuvent être contrôlées à l'aide de paramètres sur la liaison standard.
Description
Code
// Create an empty CustomBinding to populate CustomBinding binding = new CustomBinding(); // Create a SymmetricSecurityBindingElement. SymmetricSecurityBindingElement ssbe = SecurityBindingElement.CreateSspiNegotiationBindingElement(true); // Add the SymmetricSecurityBindingElement to the BindingElementCollection. binding.Elements.Add(ssbe); binding.Elements.Add(new TextMessageEncodingBindingElement()); binding.Elements.Add(new HttpTransportBindingElement()); return new CustomBinding(binding);
Attention