Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
237 lines (213 sloc) 14.8 KB
<Type Name="NetTcpSecurity" FullName="System.ServiceModel.NetTcpSecurity">
<TypeSignature Language="C#" Value="public sealed class NetTcpSecurity" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit NetTcpSecurity extends System.Object" />
<TypeSignature Language="DocId" Value="T:System.ServiceModel.NetTcpSecurity" />
<TypeSignature Language="VB.NET" Value="Public NotInheritable Class NetTcpSecurity" />
<TypeSignature Language="C++ CLI" Value="public ref class NetTcpSecurity sealed" />
<TypeSignature Language="F#" Value="type NetTcpSecurity = class" />
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.NetTcp</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.1.2.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Specifies the types of transport-level and message-level security used by an endpoint configured with a <see cref="T:System.ServiceModel.NetTcpBinding" />.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Each of the standard bindings provides parameters for controlling the transfer security requirements. These parameters typically include the security mode that specified whether message-level or transport-level security is used and the choice of client credential type. Based on the choice of options these parameters present, a channel stack is constructed with appropriate security.
The system-provided bindings supplied by Windows Communication Foundation (WCF) are a set designed to meet some of the most common scenario requirements. Each of these bindings allows the specification of security requirements for some specific targeted scenarios.
<xref:System.ServiceModel.NetTcpSecurity> provides the security specifications for <xref:System.ServiceModel.NetTcpBinding>. This is a secure, reliable, optimized binding suitable for cross-machine communication. By default it generates a run-time communication stack that supports TCP for message delivery and Windows Security for message security and authentication, WS-ReliableMessaging for reliability, and binary message encoding.
This class is instantiated by the <xref:System.ServiceModel.NetTcpBinding>, and can be accessed by a read-only property called <xref:System.ServiceModel.NetTcpBinding.Security%2A>. Because this property is read-only you cannot make changes to the returned object. If you want to control the creation of the <xref:System.ServiceModel.NetTcpSecurity> object, you can derive a class from <xref:System.ServiceModel.NetTcpBinding>.
## Examples
The following code shows how to retrieve the <xref:System.ServiceModel.NetTcpSecurity> object from a <xref:System.ServiceModel.NetTcpBinding> and prints out the various settings it contains:
[!code-csharp[S_UE_TcpSecurity#0](~/samples/snippets/csharp/VS_Snippets_CFX/s_ue_tcpsecurity/cs/service.cs#0)]
]]></format>
</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public NetTcpSecurity ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.NetTcpSecurity.#ctor" />
<MemberSignature Language="VB.NET" Value="Public Sub New ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; NetTcpSecurity();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.NetTcp</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.1.2.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<summary>Initializes a new instance of the <see cref="T:System.ServiceModel.NetTcpSecurity" /> class.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Message">
<MemberSignature Language="C#" Value="public System.ServiceModel.MessageSecurityOverTcp Message { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.MessageSecurityOverTcp Message" />
<MemberSignature Language="DocId" Value="P:System.ServiceModel.NetTcpSecurity.Message" />
<MemberSignature Language="VB.NET" Value="Public Property Message As MessageSecurityOverTcp" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property System::ServiceModel::MessageSecurityOverTcp ^ Message { System::ServiceModel::MessageSecurityOverTcp ^ get(); void set(System::ServiceModel::MessageSecurityOverTcp ^ value); };" />
<MemberSignature Language="F#" Value="member this.Message : System.ServiceModel.MessageSecurityOverTcp with get, set" Usage="System.ServiceModel.NetTcpSecurity.Message" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.NetTcp</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.1.2.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName>get: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName>set: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.ServiceModel.MessageSecurityOverTcp</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the type of message-level security requirements for a service configured with a <see cref="T:System.ServiceModel.NetTcpBinding" />.</summary>
<value>The <see cref="T:System.ServiceModel.MessageSecurityOverTcp" /> that indicates the type of message-level security requirements for an endpoint.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
<xref:System.ServiceModel.NetTcpSecurity.Message%2A> uses message-level security for the integrity and confidentiality of the SOAP message and for mutual authentication of the communication peers. If this security mode is selected on a binding, the channel stack is configured with message security binding elements and the SOAP messages are secured in compliance with WS-Security* standards.
## Examples
[!code-csharp[S_UE_TcpSecurity#1](~/samples/snippets/csharp/VS_Snippets_CFX/s_ue_tcpsecurity/cs/service.cs#1)]
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="Mode">
<MemberSignature Language="C#" Value="public System.ServiceModel.SecurityMode Mode { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.ServiceModel.SecurityMode Mode" />
<MemberSignature Language="DocId" Value="P:System.ServiceModel.NetTcpSecurity.Mode" />
<MemberSignature Language="VB.NET" Value="Public Property Mode As SecurityMode" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property System::ServiceModel::SecurityMode Mode { System::ServiceModel::SecurityMode get(); void set(System::ServiceModel::SecurityMode value); };" />
<MemberSignature Language="F#" Value="member this.Mode : System.ServiceModel.SecurityMode with get, set" Usage="System.ServiceModel.NetTcpSecurity.Mode" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.NetTcp</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.1.2.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netcore-1.0;netcore-1.1;netcore-2.0;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;dotnet-plat-ext-2.1;dotnet-plat-ext-2.2;dotnet-uwp-10.0;dotnet-plat-ext-3.0">
<AttributeName>System.ComponentModel.DefaultValue(Mono.Cecil.CustomAttributeArgument)</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName>get: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.ServiceModel.SecurityMode</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets whether message-level security and transport-level security are used by an endpoint configured with a <see cref="T:System.ServiceModel.NetTcpBinding" />.</summary>
<value>A value of the <see cref="T:System.ServiceModel.SecurityMode" /> that indicates whether message-level security or transport-level security is used by an endpoint. The default value is <see cref="F:System.ServiceModel.SecurityMode.Transport" />.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The security mode determines the type of security required by an endpoint. Windows Communication Foundation (WCF) security offers a variety of mechanisms with which to secure the transfer of messages that are configured with the system-provided bindings. Each of the bindings supports a subset of these security modes. The mode determines the mechanisms by which message transfer security functions (integrity, confidentiality and authentication) are required.
## Examples
[!code-csharp[S_UE_TcpSecurity#2](~/samples/snippets/csharp/VS_Snippets_CFX/s_ue_tcpsecurity/cs/service.cs#2)]
]]></format>
</remarks>
<exception cref="T:System.ArgumentOutOfRangeException">The value is not defined.</exception>
</Docs>
</Member>
<Member MemberName="Transport">
<MemberSignature Language="C#" Value="public System.ServiceModel.TcpTransportSecurity Transport { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.TcpTransportSecurity Transport" />
<MemberSignature Language="DocId" Value="P:System.ServiceModel.NetTcpSecurity.Transport" />
<MemberSignature Language="VB.NET" Value="Public Property Transport As TcpTransportSecurity" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property System::ServiceModel::TcpTransportSecurity ^ Transport { System::ServiceModel::TcpTransportSecurity ^ get(); void set(System::ServiceModel::TcpTransportSecurity ^ value); };" />
<MemberSignature Language="F#" Value="member this.Transport : System.ServiceModel.TcpTransportSecurity with get, set" Usage="System.ServiceModel.NetTcpSecurity.Transport" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.NetTcp</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.1.2.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName>get: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName>set: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.ServiceModel.TcpTransportSecurity</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the type of message-level security requirements for an endpoint configured with a <see cref="T:System.ServiceModel.NetTcpBinding" />.</summary>
<value>The <see cref="T:System.ServiceModel.TcpTransportSecurity" /> that indicates the type of transport-level security requirements for an endpoint.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Use <xref:System.ServiceModel.NetTcpSecurity.Transport%2A> security for integrity and confidentiality of the SOAP message and for mutual authentication. If this security mode is selected on a binding, the channel stack is configured using a secure transport and the SOAP messages are secured using transport security such as HTTPS or SSL over TCP.
## Examples
[!code-csharp[S_UE_TcpSecurity#3](~/samples/snippets/csharp/VS_Snippets_CFX/s_ue_tcpsecurity/cs/service.cs#3)]
]]></format>
</remarks>
</Docs>
</Member>
</Members>
</Type>
You can’t perform that action at this time.