System.ServiceModel 4.0.0.0 System.ServiceModel.Channels.BindingElement System.ServiceModel.Channels.ISecurityCapabilities System.ServiceModel.Channels.ITransportTokenAssertionProvider System.ServiceModel.Description.IPolicyExportExtension

Transports that use a stream-oriented protocol such as TCP and named pipes support stream-based transport upgrades. Specifically, indigo2 provides security upgrades. The configuration of this transport security is encapsulated by this class as well as by , which can be configured and added to a custom binding. In addition, a third party can write its own custom StreamSecurityBindingElement. These binding elements extend the class that is called to build the client and server stream upgrade providers.

A custom binding contains a collection of binding elements arranged in a specific order: the element representing the top of the binding stack is added first, the next element down in the binding stack is added second, and so on.

## To add this class to a binding

1. Create a .

2. Create any required custom binding elements that are above this binding element in the binding stack, such as the optional and .

3. Add the created elements in the order described previously to the using the method.

4. Create an instance of and add it to the collection.

5. Add any additional custom binding elements to the collection, such as .

Represents the binding element used to specify Windows stream security settings.

- Constructor
  4.0.0.0
  To be added.

  Initializes a new instance of the class.

- Constructor
  4.0.0.0
  To be added.
  To be added.

  Initializes a new instance of the class from an existing instance.

- Method
  4.0.0.0
  System.ServiceModel.Channels.IChannelFactory<TChannel> ``

  This method creates a channel factory, which is used to create a channel that processes outgoing messages for this binding.

  Creates a channel factory that can be used to create a channel.

  Returns a channel factory of the specified type. This method adds this class instance to the and delegates to the build method .

  members that describe bindings, behaviors, contracts, and other information required to create the channel factory. Type of channel factory.
- Method
  4.0.0.0
  System.ServiceModel.Channels.IChannelListener<TChannel> ReferenceTypeConstraint System.ServiceModel.Channels.IChannel ``

  This method creates a channel listener, which is used to create a channel that processes incoming messages for this binding.

  Creates a channel listener of the specified type.

  Returns a channel listener of the specified type. This method adds this class instance to the and delegates to the build method .

  members that describe bindings, behaviors, contracts, and other information required to create the channel listener. Type of channel listener.
- Method
  4.0.0.0
  System.Boolean ``

  A channel factory is used to create a channel that processes outgoing messages for this binding. This method delegates to the method.

  Determines whether a channel factory of the specified type can be built.

  true if a channel factory can be built; otherwise, false.

  The binding context. The type of channel to check.
- Method
  4.0.0.0
  System.Boolean ReferenceTypeConstraint System.ServiceModel.Channels.IChannel ``

  A channel listener is used to create a channel that processes incoming messages for this binding. This method delegates to the method.

  Determines whether a channel listener of the specified type can be built.

  true if a channel listener can be built; otherwise, false.

  The for the channel. The type of channel to check.
- Method
  4.0.0.0
  System.ServiceModel.Channels.BindingElement To be added.

  Creates a new binding element from this instance of the class.

  .

- Method
  4.0.0.0
  T ReferenceTypeConstraint ``

  This method receives a binding context as an input parameter, which represents the stack of binding elements. This method gets the specified object directly, delegates the inquiry to the next-lower binding element in the stack, or a combination of the two. It can modify the context if it delegates the inquiry. Each binding element in the stack can repeat this process, if it has been delegated to, until the bottom of the stack is reached. The object returned is usually a collection of properties.

  If the type of is , then an instance of this class is returned with ,

  , and all set to true, and and set to the current value in this binding.

  If the type of is , then a default instance of this class is returned.

  This method is implemented by binding elements as well as by the run-time objects such as , , and .

  Gets a specified object from the .

  The specified object from the or null if the object is not found.

  A . The object to get.
- Method
  4.0.0.0
  System.Xml.XmlElement

  This is used to generate WSDL for the associated service.

  Gets the that represents the transport token used in the security binding.

  An that represents the transport token used in the policy generated by this binding.

- Property
  4.0.0.0
  System.Net.Security.ProtectionLevel To be added. To be added.

  Gets or sets the protection level.

- Property
  4.0.0.0
  System.Net.Security.ProtectionLevel To be added. To be added. To be added.
- Property
  4.0.0.0
  System.Net.Security.ProtectionLevel To be added. To be added. To be added.
- Property
  4.0.0.0
  System.Boolean To be added. To be added. To be added.
- Property
  4.0.0.0
  System.Boolean To be added. To be added. To be added.
- Property
  4.0.0.0
  System.Boolean To be added. To be added. To be added.
- Method
  4.0.0.0
  System.Void `` ``

  This method writes binding-related statements into the WSDL information exposed by a particular contract and is used by indigo2 to communicate to clients the existence of this custom binding element in the binding stack.

  This method takes two parameters: the and objects. Use the , , and methods to obtain collections of policy assertions that have already been exported at various scopes. Then use this method to add your own policy assertions to the appropriate collection.

  The property exposes the for the endpoint that is being exported. This enables this method to correctly scope their exported policy assertions. For example, security attributes in code can add behaviors to the that indicate where security policy assertions should be added.

  Once custom policy assertions are attached to the WSDL information, clients can detect and import the custom binding assertions by implementing an interface.

  Exports a custom policy assertion about Windows stream security.

  The that you can use to modify the exporting process. The that you can use to insert your custom policy assertion.