This documentation is archived and is not being maintained.

WindowsStreamSecurityBindingElement Class

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

Namespace:  System.ServiceModel.Channels
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

Public Class WindowsStreamSecurityBindingElement _
	Inherits StreamUpgradeBindingElement _
	Implements ITransportTokenAssertionProvider, IPolicyExportExtension

The WindowsStreamSecurityBindingElement type exposes the following members.

Public methodWindowsStreamSecurityBindingElementInitializes a new instance of the WindowsStreamSecurityBindingElement class.
Protected methodWindowsStreamSecurityBindingElement(WindowsStreamSecurityBindingElement)Initializes a new instance of the WindowsStreamSecurityBindingElement class from an existing instance.

Public propertyProtectionLevelGets or sets the protection level.

Public methodBuildChannelFactory(Of TChannel)Creates a channel factory that can be used to create a channel. (Overrides BindingElement.BuildChannelFactory(Of TChannel)(BindingContext).)
Public methodBuildChannelListener(Of TChannel)Creates a channel listener of the specified type. (Overrides BindingElement.BuildChannelListener(Of TChannel)(BindingContext).)
Public methodBuildClientStreamUpgradeProviderCreates an instance on the client of the StreamUpgradeProvider based on the channel context provided. (Overrides StreamUpgradeBindingElement.BuildClientStreamUpgradeProvider(BindingContext).)
Public methodBuildServerStreamUpgradeProviderCreates an instance on the server of the StreamUpgradeProvider based on the channel context provided. (Overrides StreamUpgradeBindingElement.BuildServerStreamUpgradeProvider(BindingContext).)
Public methodCanBuildChannelFactory(Of TChannel)Determines whether a channel factory of the specified type can be built. (Overrides BindingElement.CanBuildChannelFactory(Of TChannel)(BindingContext).)
Public methodCanBuildChannelListener(Of TChannel)Determines whether a channel listener of the specified type can be built. (Overrides BindingElement.CanBuildChannelListener(Of TChannel)(BindingContext).)
Public methodCloneCreates a new binding element from this instance of the class. (Overrides BindingElement.Clone.)
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetProperty(Of T)Gets a specified object from the BindingContext. (Overrides BindingElement.GetProperty(Of T)(BindingContext).)
Public methodGetTransportTokenAssertionGets the XmlElement that represents the transport token used in the security binding.
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)

Explicit interface implemetationPrivate methodIPolicyExportExtension.ExportPolicyExports a custom policy assertion about Windows stream security.

Transports that use a stream-oriented protocol such as TCP and named pipes support stream-based transport upgrades. Specifically, provides security upgrades. The configuration of this transport security is encapsulated by this class as well as by SslStreamSecurityBindingElement, 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 StreamUpgradeBindingElement 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 BindingElementCollection.

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

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

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

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

.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.