-
Notifications
You must be signed in to change notification settings - Fork 1.6k
/
AuthorizationContext.xml
318 lines (295 loc) · 19.1 KB
/
AuthorizationContext.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
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
<Type Name="AuthorizationContext" FullName="System.IdentityModel.Policy.AuthorizationContext">
<TypeSignature Language="C#" Value="public abstract class AuthorizationContext : System.IdentityModel.Policy.IAuthorizationComponent" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi abstract beforefieldinit AuthorizationContext extends System.Object implements class System.IdentityModel.Policy.IAuthorizationComponent" />
<TypeSignature Language="DocId" Value="T:System.IdentityModel.Policy.AuthorizationContext" />
<TypeSignature Language="VB.NET" Value="Public MustInherit Class AuthorizationContext
Implements IAuthorizationComponent" />
<TypeSignature Language="F#" Value="type AuthorizationContext = class
 interface IAuthorizationComponent" />
<TypeSignature Language="C++ CLI" Value="public ref class AuthorizationContext abstract : System::IdentityModel::Policy::IAuthorizationComponent" />
<AssemblyInfo>
<AssemblyName>System.IdentityModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>6.2.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Private.ServiceModel</AssemblyName>
<AssemblyVersion>4.10.3.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Security</AssemblyName>
</AssemblyInfo>
<TypeForwardingChain>
<TypeForwarding From="System.ServiceModel.Security" FromVersion="6.0.0.0" To="System.ServiceModel.Primitives" ToVersion="6.0.0.0" FrameworkAlternate="net-6.0" />
</TypeForwardingChain>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.IdentityModel.Policy.IAuthorizationComponent</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<summary>The result of evaluating all authorization policies available from the tokens in the sent message and by calling the <see cref="M:System.ServiceModel.ServiceAuthorizationManager.GetAuthorizationPolicies(System.ServiceModel.OperationContext)" /> method.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Evaluating all of the authorization policies in an authorization manager results in a set of <xref:System.IdentityModel.Claims.ClaimSet> objects. These objects make up an authorization context.
An authorization context contains a set of claim set objects, an expiration time that specifies the span of time during which the authorization context is valid, and a unique identifier.
The <xref:System.IdentityModel.Policy.AuthorizationContext> for the current operation can be accessed via the <xref:System.ServiceModel.ServiceSecurityContext.AuthorizationContext%2A> property.
## Examples
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/c_iauthorizationpolicy/cs/service.cs" id="Snippet4":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/c_iauthorizationpolicy/vb/myauthorizationpolicy.vb" id="Snippet4":::
]]></format>
</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="protected AuthorizationContext ();" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:System.IdentityModel.Policy.AuthorizationContext.#ctor" />
<MemberSignature Language="VB.NET" Value="Protected Sub New ()" />
<MemberSignature Language="C++ CLI" Value="protected:
 AuthorizationContext();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.IdentityModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Private.ServiceModel</AssemblyName>
<AssemblyVersion>4.10.3.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Security</AssemblyName>
</AssemblyInfo>
<Parameters />
<Docs>
<summary>Initializes a new instance of the <see cref="T:System.IdentityModel.Policy.AuthorizationContext" /> class.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The parameterless constructor does nothing.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="ClaimSets">
<MemberSignature Language="C#" Value="public abstract System.Collections.ObjectModel.ReadOnlyCollection<System.IdentityModel.Claims.ClaimSet> ClaimSets { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Collections.ObjectModel.ReadOnlyCollection`1<class System.IdentityModel.Claims.ClaimSet> ClaimSets" />
<MemberSignature Language="DocId" Value="P:System.IdentityModel.Policy.AuthorizationContext.ClaimSets" />
<MemberSignature Language="VB.NET" Value="Public MustOverride ReadOnly Property ClaimSets As ReadOnlyCollection(Of ClaimSet)" />
<MemberSignature Language="F#" Value="member this.ClaimSets : System.Collections.ObjectModel.ReadOnlyCollection<System.IdentityModel.Claims.ClaimSet>" Usage="System.IdentityModel.Policy.AuthorizationContext.ClaimSets" />
<MemberSignature Language="C++ CLI" Value="public:
 abstract property System::Collections::ObjectModel::ReadOnlyCollection<System::IdentityModel::Claims::ClaimSet ^> ^ ClaimSets { System::Collections::ObjectModel::ReadOnlyCollection<System::IdentityModel::Claims::ClaimSet ^> ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.IdentityModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Private.ServiceModel</AssemblyName>
<AssemblyVersion>4.10.3.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Security</AssemblyName>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Collections.ObjectModel.ReadOnlyCollection<System.IdentityModel.Claims.ClaimSet></ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the set of claims associated with an authorization policy.</summary>
<value>A <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1" /> of type <see cref="T:System.IdentityModel.Claims.ClaimSet" /> that contains the set of claims.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Use the <xref:System.IdentityModel.Policy.AuthorizationContext.ClaimSets%2A> property to get the set of claims that were added by the authorization policy. A class deriving from <xref:System.ServiceModel.ServiceAuthorizationManager> can use the claims to make authorization decisions.
## Examples
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/c_iauthorizationpolicy/cs/service.cs" id="Snippet5":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/c_iauthorizationpolicy/vb/myauthorizationpolicy.vb" id="Snippet5":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="CreateDefaultAuthorizationContext">
<MemberSignature Language="C#" Value="public static System.IdentityModel.Policy.AuthorizationContext CreateDefaultAuthorizationContext (System.Collections.Generic.IList<System.IdentityModel.Policy.IAuthorizationPolicy> authorizationPolicies);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.IdentityModel.Policy.AuthorizationContext CreateDefaultAuthorizationContext(class System.Collections.Generic.IList`1<class System.IdentityModel.Policy.IAuthorizationPolicy> authorizationPolicies) cil managed" />
<MemberSignature Language="DocId" Value="M:System.IdentityModel.Policy.AuthorizationContext.CreateDefaultAuthorizationContext(System.Collections.Generic.IList{System.IdentityModel.Policy.IAuthorizationPolicy})" />
<MemberSignature Language="VB.NET" Value="Public Shared Function CreateDefaultAuthorizationContext (authorizationPolicies As IList(Of IAuthorizationPolicy)) As AuthorizationContext" />
<MemberSignature Language="F#" Value="static member CreateDefaultAuthorizationContext : System.Collections.Generic.IList<System.IdentityModel.Policy.IAuthorizationPolicy> -> System.IdentityModel.Policy.AuthorizationContext" Usage="System.IdentityModel.Policy.AuthorizationContext.CreateDefaultAuthorizationContext authorizationPolicies" />
<MemberSignature Language="C++ CLI" Value="public:
 static System::IdentityModel::Policy::AuthorizationContext ^ CreateDefaultAuthorizationContext(System::Collections::Generic::IList<System::IdentityModel::Policy::IAuthorizationPolicy ^> ^ authorizationPolicies);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.IdentityModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Private.ServiceModel</AssemblyName>
<AssemblyVersion>4.10.3.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Security</AssemblyName>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.IdentityModel.Policy.AuthorizationContext</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="authorizationPolicies" Type="System.Collections.Generic.IList<System.IdentityModel.Policy.IAuthorizationPolicy>" />
</Parameters>
<Docs>
<param name="authorizationPolicies">An <see cref="T:System.Collections.Generic.IList`1" /> of <see cref="T:System.IdentityModel.Policy.IAuthorizationPolicy" /> that contains the set of authorization policies.</param>
<summary>Evaluate all of the specified authorization policies and create an <see cref="T:System.IdentityModel.Policy.AuthorizationContext" />.</summary>
<returns>An <see cref="T:System.IdentityModel.Policy.AuthorizationContext" /> that contains the result of evaluating all the specified authorization policies.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.IdentityModel.Policy.AuthorizationContext.CreateDefaultAuthorizationContext%2A> method is typically only used by the infrastructure.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="ExpirationTime">
<MemberSignature Language="C#" Value="public abstract DateTime ExpirationTime { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.DateTime ExpirationTime" />
<MemberSignature Language="DocId" Value="P:System.IdentityModel.Policy.AuthorizationContext.ExpirationTime" />
<MemberSignature Language="VB.NET" Value="Public MustOverride ReadOnly Property ExpirationTime As DateTime" />
<MemberSignature Language="F#" Value="member this.ExpirationTime : DateTime" Usage="System.IdentityModel.Policy.AuthorizationContext.ExpirationTime" />
<MemberSignature Language="C++ CLI" Value="public:
 abstract property DateTime ExpirationTime { DateTime get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.IdentityModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Private.ServiceModel</AssemblyName>
<AssemblyVersion>4.10.3.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Security</AssemblyName>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.DateTime</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the date and time at which this <see cref="T:System.IdentityModel.Policy.AuthorizationContext" /> object is no longer valid.</summary>
<value>A <see cref="T:System.DateTime" /> value that indicates the date and time when this <see cref="T:System.IdentityModel.Policy.AuthorizationContext" /> object is no longer valid.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.IdentityModel.Policy.AuthorizationContext.ExpirationTime%2A> property is in Universal Coordinated Time (UTC).
> [!NOTE]
> The service model in WCF does not check the value of the <xref:System.IdentityModel.Policy.AuthorizationContext.ExpirationTime%2A> property. This property is set by WCF using the <xref:System.IdentityModel.Tokens.SecurityToken.ValidTo%2A> property of the security token on which the authorization context is based. The <xref:System.IdentityModel.Tokens.SecurityToken.ValidTo%2A> property is checked by WCF, however. The authorization context's expiration time is meant for scenarios such as an authorization policy which has to take some action upon expiration.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="Id">
<MemberSignature Language="C#" Value="public abstract string Id { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance string Id" />
<MemberSignature Language="DocId" Value="P:System.IdentityModel.Policy.AuthorizationContext.Id" />
<MemberSignature Language="VB.NET" Value="Public MustOverride ReadOnly Property Id As String" />
<MemberSignature Language="F#" Value="member this.Id : string" Usage="System.IdentityModel.Policy.AuthorizationContext.Id" />
<MemberSignature Language="C++ CLI" Value="public:
 abstract property System::String ^ Id { System::String ^ get(); };" />
<MemberType>Property</MemberType>
<Implements>
<InterfaceMember>P:System.IdentityModel.Policy.IAuthorizationComponent.Id</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>System.IdentityModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Private.ServiceModel</AssemblyName>
<AssemblyVersion>4.10.3.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Security</AssemblyName>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a unique identifier for this <see cref="T:System.IdentityModel.Policy.AuthorizationContext" /> object.</summary>
<value>A <see cref="T:System.IdentityModel.Policy.AuthorizationContext" /> object.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Typically, the <xref:System.IdentityModel.Policy.AuthorizationContext.Id%2A> property is a GUID.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="Properties">
<MemberSignature Language="C#" Value="public abstract System.Collections.Generic.IDictionary<string,object> Properties { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Collections.Generic.IDictionary`2<string, object> Properties" />
<MemberSignature Language="DocId" Value="P:System.IdentityModel.Policy.AuthorizationContext.Properties" />
<MemberSignature Language="VB.NET" Value="Public MustOverride ReadOnly Property Properties As IDictionary(Of String, Object)" />
<MemberSignature Language="F#" Value="member this.Properties : System.Collections.Generic.IDictionary<string, obj>" Usage="System.IdentityModel.Policy.AuthorizationContext.Properties" />
<MemberSignature Language="C++ CLI" Value="public:
 abstract property System::Collections::Generic::IDictionary<System::String ^, System::Object ^> ^ Properties { System::Collections::Generic::IDictionary<System::String ^, System::Object ^> ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.IdentityModel</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Private.ServiceModel</AssemblyName>
<AssemblyVersion>4.10.3.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Security</AssemblyName>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Collections.Generic.IDictionary<System.String,System.Object></ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a collection of non-claim properties associated with this <see cref="T:System.IdentityModel.Policy.AuthorizationContext" /> object.</summary>
<value>A <see cref="T:System.Collections.Generic.Dictionary`2" /> that specifies a collection of non-claim properties.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Windows Communication Foundation reserves two properties: `Identities` and `Principal`. The `Identities` property is used by an <xref:System.IdentityModel.Policy.IAuthorizationPolicy> to specify the <xref:System.Collections.Generic.IList%601> of one or more identities that are related to the <xref:System.IdentityModel.Policy.AuthorizationContext>. The `Principal` property is used by an <xref:System.IdentityModel.Policy.IAuthorizationPolicy> to specify the <xref:System.Security.Principal.IPrincipal> that is associated with an <xref:System.IdentityModel.Policy.AuthorizationContext>.
]]></format>
</remarks>
</Docs>
</Member>
</Members>
</Type>