/
DataProtectionSecurityStateEncoder.xml
255 lines (248 loc) · 16.7 KB
/
DataProtectionSecurityStateEncoder.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
<Type Name="DataProtectionSecurityStateEncoder" FullName="System.ServiceModel.Security.DataProtectionSecurityStateEncoder">
<TypeSignature Language="C#" Value="public class DataProtectionSecurityStateEncoder : System.ServiceModel.Security.SecurityStateEncoder" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit DataProtectionSecurityStateEncoder extends System.ServiceModel.Security.SecurityStateEncoder" />
<TypeSignature Language="DocId" Value="T:System.ServiceModel.Security.DataProtectionSecurityStateEncoder" />
<TypeSignature Language="VB.NET" Value="Public Class DataProtectionSecurityStateEncoder
Inherits SecurityStateEncoder" />
<TypeSignature Language="F#" Value="type DataProtectionSecurityStateEncoder = class
 inherit SecurityStateEncoder" />
<TypeSignature Language="C++ CLI" Value="public ref class DataProtectionSecurityStateEncoder : System::ServiceModel::Security::SecurityStateEncoder" />
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.ServiceModel.Security.SecurityStateEncoder</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Provides encoding and decoding mechanisms for the security state using the Windows <see langword="DataProtection" /> API functionality.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
This class is used for encoding the security state as represented by a *Stateful Security Context Token* when the message is sent, and for decoding the security context when the message arrives at a recipient.
The encoding can either be in the current user scope (whereby only processes running as the user account can decode the security state) or it can be in the local machine scope (whereby all processes running on the machine can decode the security state). By default, the encoding is in the current user scope.
This class is used by the server when sending the security state in the *Stateful Security Context Token* issued to the client.
`DataProtection` based on the `CurrentUser` scope requires the current user to have a user profile. If the user has a roaming profile, then the security state encoded by the user process running on one machine can be decoded by a user process running on a different machine.
]]></format>
</remarks>
</Docs>
<Members>
<MemberGroup MemberName=".ctor">
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Docs>
<summary>Initializes a new instance of this class.</summary>
</Docs>
</MemberGroup>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public DataProtectionSecurityStateEncoder ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.Security.DataProtectionSecurityStateEncoder.#ctor" />
<MemberSignature Language="VB.NET" Value="Public Sub New ()" />
<MemberSignature Language="C++ CLI" Value="public:
 DataProtectionSecurityStateEncoder();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName Language="C#">[System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")>]</AttributeName>
</Attribute>
</Attributes>
<Parameters />
<Docs>
<summary>Initializes a new instance of this class.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public DataProtectionSecurityStateEncoder (bool useCurrentUserProtectionScope);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(bool useCurrentUserProtectionScope) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.Security.DataProtectionSecurityStateEncoder.#ctor(System.Boolean)" />
<MemberSignature Language="VB.NET" Value="Public Sub New (useCurrentUserProtectionScope As Boolean)" />
<MemberSignature Language="F#" Value="new System.ServiceModel.Security.DataProtectionSecurityStateEncoder : bool -> System.ServiceModel.Security.DataProtectionSecurityStateEncoder" Usage="new System.ServiceModel.Security.DataProtectionSecurityStateEncoder useCurrentUserProtectionScope" />
<MemberSignature Language="C++ CLI" Value="public:
 DataProtectionSecurityStateEncoder(bool useCurrentUserProtectionScope);" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName Language="C#">[System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")>]</AttributeName>
</Attribute>
</Attributes>
<Parameters>
<Parameter Name="useCurrentUserProtectionScope" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="useCurrentUserProtectionScope">Indicates whether to use the current user protection scope.</param>
<summary>Initializes a new instance of this class.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public DataProtectionSecurityStateEncoder (bool useCurrentUserProtectionScope, byte[] entropy);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(bool useCurrentUserProtectionScope, unsigned int8[] entropy) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.Security.DataProtectionSecurityStateEncoder.#ctor(System.Boolean,System.Byte[])" />
<MemberSignature Language="VB.NET" Value="Public Sub New (useCurrentUserProtectionScope As Boolean, entropy As Byte())" />
<MemberSignature Language="F#" Value="new System.ServiceModel.Security.DataProtectionSecurityStateEncoder : bool * byte[] -> System.ServiceModel.Security.DataProtectionSecurityStateEncoder" Usage="new System.ServiceModel.Security.DataProtectionSecurityStateEncoder (useCurrentUserProtectionScope, entropy)" />
<MemberSignature Language="C++ CLI" Value="public:
 DataProtectionSecurityStateEncoder(bool useCurrentUserProtectionScope, cli::array <System::Byte> ^ entropy);" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="useCurrentUserProtectionScope" Type="System.Boolean" />
<Parameter Name="entropy" Type="System.Byte[]" />
</Parameters>
<Docs>
<param name="useCurrentUserProtectionScope">Indicates whether to use the current user protection scope.</param>
<param name="entropy">A <see langword="byte" /> array that specifies the entropy, which indicates additional randomness that the encoder could use to encode the security state.</param>
<summary>Initializes a new instance of this class.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="DecodeSecurityState">
<MemberSignature Language="C#" Value="protected internal override byte[] DecodeSecurityState (byte[] data);" />
<MemberSignature Language="ILAsm" Value=".method familyorassemblyhidebysig virtual instance unsigned int8[] DecodeSecurityState(unsigned int8[] data) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.Security.DataProtectionSecurityStateEncoder.DecodeSecurityState(System.Byte[])" />
<MemberSignature Language="VB.NET" Value="Protected Friend Overrides Function DecodeSecurityState (data As Byte()) As Byte()" />
<MemberSignature Language="F#" Value="override this.DecodeSecurityState : byte[] -> byte[]" Usage="dataProtectionSecurityStateEncoder.DecodeSecurityState data" />
<MemberSignature Language="C++ CLI" Value="protected public:
 override cli::array <System::Byte> ^ DecodeSecurityState(cli::array <System::Byte> ^ data);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Byte[]</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="data" Type="System.Byte[]" />
</Parameters>
<Docs>
<param name="data">A <see langword="byte" /> array that represents the encoded security state.</param>
<summary>Decodes the security state.</summary>
<returns>A <see langword="byte" /> array that represents the decoded security state.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="EncodeSecurityState">
<MemberSignature Language="C#" Value="protected internal override byte[] EncodeSecurityState (byte[] data);" />
<MemberSignature Language="ILAsm" Value=".method familyorassemblyhidebysig virtual instance unsigned int8[] EncodeSecurityState(unsigned int8[] data) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.Security.DataProtectionSecurityStateEncoder.EncodeSecurityState(System.Byte[])" />
<MemberSignature Language="VB.NET" Value="Protected Friend Overrides Function EncodeSecurityState (data As Byte()) As Byte()" />
<MemberSignature Language="F#" Value="override this.EncodeSecurityState : byte[] -> byte[]" Usage="dataProtectionSecurityStateEncoder.EncodeSecurityState data" />
<MemberSignature Language="C++ CLI" Value="protected public:
 override cli::array <System::Byte> ^ EncodeSecurityState(cli::array <System::Byte> ^ data);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Byte[]</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="data" Type="System.Byte[]" />
</Parameters>
<Docs>
<param name="data">A <see langword="byte" /> array representing the decoded security state.</param>
<summary>Encodes the security state.</summary>
<returns>A <see langword="byte" /> array that represents the encoded security state.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="GetEntropy">
<MemberSignature Language="C#" Value="public byte[] GetEntropy ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance unsigned int8[] GetEntropy() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.Security.DataProtectionSecurityStateEncoder.GetEntropy" />
<MemberSignature Language="VB.NET" Value="Public Function GetEntropy () As Byte()" />
<MemberSignature Language="F#" Value="member this.GetEntropy : unit -> byte[]" Usage="dataProtectionSecurityStateEncoder.GetEntropy " />
<MemberSignature Language="C++ CLI" Value="public:
 cli::array <System::Byte> ^ GetEntropy();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Byte[]</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Indicates the randomness of this encoder.</summary>
<returns>An array of type <see cref="T:System.Byte" />.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="ToString">
<MemberSignature Language="C#" Value="public override string ToString ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance string ToString() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.Security.DataProtectionSecurityStateEncoder.ToString" />
<MemberSignature Language="VB.NET" Value="Public Overrides Function ToString () As String" />
<MemberSignature Language="F#" Value="override this.ToString : unit -> string" Usage="dataProtectionSecurityStateEncoder.ToString " />
<MemberSignature Language="C++ CLI" Value="public:
 override System::String ^ ToString();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Returns a string that represents the current <see cref="T:System.ServiceModel.Security.DataProtectionSecurityStateEncoder" /> instance.</summary>
<returns>A <see cref="T:System.String" /> that represents the current <see cref="T:System.ServiceModel.Security.DataProtectionSecurityStateEncoder" /> instance.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Information returned by this method includes the <xref:System.ServiceModel.Security.DataProtectionSecurityStateEncoder.UseCurrentUserProtectionScope%2A> and <xref:System.ServiceModel.Security.DataProtectionSecurityStateEncoder.GetEntropy%2A> values of the current instance.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="UseCurrentUserProtectionScope">
<MemberSignature Language="C#" Value="public bool UseCurrentUserProtectionScope { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool UseCurrentUserProtectionScope" />
<MemberSignature Language="DocId" Value="P:System.ServiceModel.Security.DataProtectionSecurityStateEncoder.UseCurrentUserProtectionScope" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property UseCurrentUserProtectionScope As Boolean" />
<MemberSignature Language="F#" Value="member this.UseCurrentUserProtectionScope : bool" Usage="System.ServiceModel.Security.DataProtectionSecurityStateEncoder.UseCurrentUserProtectionScope" />
<MemberSignature Language="C++ CLI" Value="public:
 property bool UseCurrentUserProtectionScope { bool get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName Language="C#">[get: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]</AttributeName>
<AttributeName Language="F#">[<get: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a value that indicates whether to use the current user protection scope.</summary>
<value>
<see langword="true" /> if the current user protection scope will be used; otherwise, <see langword="false" />.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>