/
SecurityCallContext.xml
315 lines (294 loc) · 18.9 KB
/
SecurityCallContext.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
<Type Name="SecurityCallContext" FullName="System.EnterpriseServices.SecurityCallContext">
<TypeSignature Language="C#" Value="public sealed class SecurityCallContext" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit SecurityCallContext extends System.Object" />
<TypeSignature Language="DocId" Value="T:System.EnterpriseServices.SecurityCallContext" />
<TypeSignature Language="VB.NET" Value="Public NotInheritable Class SecurityCallContext" />
<TypeSignature Language="F#" Value="type SecurityCallContext = class" />
<TypeSignature Language="C++ CLI" Value="public ref class SecurityCallContext sealed" />
<AssemblyInfo>
<AssemblyName>System.EnterpriseServices</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Describes the chain of callers leading up to the current method call.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Examples
The following code example demonstrates the use of the <xref:System.EnterpriseServices.SecurityCallContext> class to interrogate the security context of calls to the methods of a <xref:System.EnterpriseServices.ServicedComponent> class.
:::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/EnterpriseServices_Security/CPP/employeeinformation.cpp" id="Snippet4":::
:::code language="csharp" source="~/snippets/csharp/System.EnterpriseServices/AccessChecksLevelOption/Overview/employeeinformation.cs" id="Snippet4":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/EnterpriseServices_Security/VB/employeeinformation.vb" id="Snippet4":::
]]></format>
</remarks>
</Docs>
<Members>
<Member MemberName="Callers">
<MemberSignature Language="C#" Value="public System.EnterpriseServices.SecurityCallers Callers { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.EnterpriseServices.SecurityCallers Callers" />
<MemberSignature Language="DocId" Value="P:System.EnterpriseServices.SecurityCallContext.Callers" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property Callers As SecurityCallers" />
<MemberSignature Language="F#" Value="member this.Callers : System.EnterpriseServices.SecurityCallers" Usage="System.EnterpriseServices.SecurityCallContext.Callers" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::EnterpriseServices::SecurityCallers ^ Callers { System::EnterpriseServices::SecurityCallers ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.EnterpriseServices</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.EnterpriseServices.SecurityCallers</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a <see cref="T:System.EnterpriseServices.SecurityCallers" /> object that describes the caller.</summary>
<value>The <see cref="T:System.EnterpriseServices.SecurityCallers" /> object that describes the caller.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
<xref:System.EnterpriseServices.SecurityCallContext.Callers%2A> accesses the `Callers` item in the `ISecurityCallContext` collection in COM+.
]]></format>
</remarks>
<exception cref="T:System.Runtime.InteropServices.COMException">There is no security context.</exception>
</Docs>
</Member>
<Member MemberName="CurrentCall">
<MemberSignature Language="C#" Value="public static System.EnterpriseServices.SecurityCallContext CurrentCall { get; }" />
<MemberSignature Language="ILAsm" Value=".property class System.EnterpriseServices.SecurityCallContext CurrentCall" />
<MemberSignature Language="DocId" Value="P:System.EnterpriseServices.SecurityCallContext.CurrentCall" />
<MemberSignature Language="VB.NET" Value="Public Shared ReadOnly Property CurrentCall As SecurityCallContext" />
<MemberSignature Language="F#" Value="static member CurrentCall : System.EnterpriseServices.SecurityCallContext" Usage="System.EnterpriseServices.SecurityCallContext.CurrentCall" />
<MemberSignature Language="C++ CLI" Value="public:
 static property System::EnterpriseServices::SecurityCallContext ^ CurrentCall { System::EnterpriseServices::SecurityCallContext ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.EnterpriseServices</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.EnterpriseServices.SecurityCallContext</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a <see cref="T:System.EnterpriseServices.SecurityCallContext" /> object that describes the security call context.</summary>
<value>The <see cref="T:System.EnterpriseServices.SecurityCallContext" /> object that describes the security call context.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The static <xref:System.EnterpriseServices.SecurityCallContext.CurrentCall%2A> property is the recommended way to access the security call context.
## Examples
The following code example demonstrates the use of this method to obtain a <xref:System.EnterpriseServices.SecurityCallContext> object describing the security context of a method call.
:::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/EnterpriseServices_Security/CPP/employeeinformation.cpp" id="Snippet6":::
:::code language="csharp" source="~/snippets/csharp/System.EnterpriseServices/AccessChecksLevelOption/Overview/employeeinformation.cs" id="Snippet6":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/EnterpriseServices_Security/VB/employeeinformation.vb" id="Snippet6":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="DirectCaller">
<MemberSignature Language="C#" Value="public System.EnterpriseServices.SecurityIdentity DirectCaller { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.EnterpriseServices.SecurityIdentity DirectCaller" />
<MemberSignature Language="DocId" Value="P:System.EnterpriseServices.SecurityCallContext.DirectCaller" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property DirectCaller As SecurityIdentity" />
<MemberSignature Language="F#" Value="member this.DirectCaller : System.EnterpriseServices.SecurityIdentity" Usage="System.EnterpriseServices.SecurityCallContext.DirectCaller" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::EnterpriseServices::SecurityIdentity ^ DirectCaller { System::EnterpriseServices::SecurityIdentity ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.EnterpriseServices</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.EnterpriseServices.SecurityIdentity</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a <see cref="T:System.EnterpriseServices.SecurityIdentity" /> object that describes the direct caller of this method.</summary>
<value>A <see cref="T:System.EnterpriseServices.SecurityIdentity" /> value.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Examples
The following code example demonstrates the use of this method to check the identity of the direct caller of a <xref:System.EnterpriseServices.ServicedComponent> method.
:::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/EnterpriseServices_Security/CPP/employeeinformation.cpp" id="Snippet7":::
:::code language="csharp" source="~/snippets/csharp/System.EnterpriseServices/AccessChecksLevelOption/Overview/employeeinformation.cs" id="Snippet7":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/EnterpriseServices_Security/VB/employeeinformation.vb" id="Snippet7":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="IsCallerInRole">
<MemberSignature Language="C#" Value="public bool IsCallerInRole (string role);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool IsCallerInRole(string role) cil managed" />
<MemberSignature Language="DocId" Value="M:System.EnterpriseServices.SecurityCallContext.IsCallerInRole(System.String)" />
<MemberSignature Language="VB.NET" Value="Public Function IsCallerInRole (role As String) As Boolean" />
<MemberSignature Language="F#" Value="member this.IsCallerInRole : string -> bool" Usage="securityCallContext.IsCallerInRole role" />
<MemberSignature Language="C++ CLI" Value="public:
 bool IsCallerInRole(System::String ^ role);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.EnterpriseServices</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="role" Type="System.String" />
</Parameters>
<Docs>
<param name="role">The specified role.</param>
<summary>Verifies that the direct caller is a member of the specified role.</summary>
<returns>
<see langword="true" /> if the direct caller is a member of the specified role; otherwise, <see langword="false" />.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Examples
The following code example demonstrates the use of this method to determine if the caller of a <xref:System.EnterpriseServices.ServicedComponent> method is in a specified role.
:::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/EnterpriseServices_Security/CPP/employeeinformation.cpp" id="Snippet6":::
:::code language="csharp" source="~/snippets/csharp/System.EnterpriseServices/AccessChecksLevelOption/Overview/employeeinformation.cs" id="Snippet6":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/EnterpriseServices_Security/VB/employeeinformation.vb" id="Snippet6":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="IsSecurityEnabled">
<MemberSignature Language="C#" Value="public bool IsSecurityEnabled { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool IsSecurityEnabled" />
<MemberSignature Language="DocId" Value="P:System.EnterpriseServices.SecurityCallContext.IsSecurityEnabled" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property IsSecurityEnabled As Boolean" />
<MemberSignature Language="F#" Value="member this.IsSecurityEnabled : bool" Usage="System.EnterpriseServices.SecurityCallContext.IsSecurityEnabled" />
<MemberSignature Language="C++ CLI" Value="public:
 property bool IsSecurityEnabled { bool get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.EnterpriseServices</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Determines whether security checks are enabled in the current context.</summary>
<value>
<see langword="true" /> if security checks are enabled in the current context; otherwise, <see langword="false" />.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="IsUserInRole">
<MemberSignature Language="C#" Value="public bool IsUserInRole (string user, string role);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool IsUserInRole(string user, string role) cil managed" />
<MemberSignature Language="DocId" Value="M:System.EnterpriseServices.SecurityCallContext.IsUserInRole(System.String,System.String)" />
<MemberSignature Language="VB.NET" Value="Public Function IsUserInRole (user As String, role As String) As Boolean" />
<MemberSignature Language="F#" Value="member this.IsUserInRole : string * string -> bool" Usage="securityCallContext.IsUserInRole (user, role)" />
<MemberSignature Language="C++ CLI" Value="public:
 bool IsUserInRole(System::String ^ user, System::String ^ role);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.EnterpriseServices</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="user" Type="System.String" />
<Parameter Name="role" Type="System.String" />
</Parameters>
<Docs>
<param name="user">The specified user.</param>
<param name="role">The specified role.</param>
<summary>Verifies that the specified user is in the specified role.</summary>
<returns>
<see langword="true" /> if the specified user is a member of the specified role; otherwise, <see langword="false" />.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="MinAuthenticationLevel">
<MemberSignature Language="C#" Value="public int MinAuthenticationLevel { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 MinAuthenticationLevel" />
<MemberSignature Language="DocId" Value="P:System.EnterpriseServices.SecurityCallContext.MinAuthenticationLevel" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property MinAuthenticationLevel As Integer" />
<MemberSignature Language="F#" Value="member this.MinAuthenticationLevel : int" Usage="System.EnterpriseServices.SecurityCallContext.MinAuthenticationLevel" />
<MemberSignature Language="C++ CLI" Value="public:
 property int MinAuthenticationLevel { int get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.EnterpriseServices</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the <see langword="MinAuthenticationLevel" /> value from the <see langword="ISecurityCallContext" /> collection in COM+.</summary>
<value>The <see langword="MinAuthenticationLevel" /> value from the <see langword="ISecurityCallContext" /> collection in COM+.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
<xref:System.EnterpriseServices.SecurityCallContext.MinAuthenticationLevel%2A> is the least secure authentication level of all callers in the chain.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="NumCallers">
<MemberSignature Language="C#" Value="public int NumCallers { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 NumCallers" />
<MemberSignature Language="DocId" Value="P:System.EnterpriseServices.SecurityCallContext.NumCallers" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property NumCallers As Integer" />
<MemberSignature Language="F#" Value="member this.NumCallers : int" Usage="System.EnterpriseServices.SecurityCallContext.NumCallers" />
<MemberSignature Language="C++ CLI" Value="public:
 property int NumCallers { int get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.EnterpriseServices</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the <see langword="NumCallers" /> value from the <see langword="ISecurityCallContext" /> collection in COM+.</summary>
<value>The <see langword="NumCallers" /> value from the <see langword="ISecurityCallContext" /> collection in COM+.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
<xref:System.EnterpriseServices.SecurityCallContext.NumCallers%2A> is the number of callers in the chain of calls.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="OriginalCaller">
<MemberSignature Language="C#" Value="public System.EnterpriseServices.SecurityIdentity OriginalCaller { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.EnterpriseServices.SecurityIdentity OriginalCaller" />
<MemberSignature Language="DocId" Value="P:System.EnterpriseServices.SecurityCallContext.OriginalCaller" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property OriginalCaller As SecurityIdentity" />
<MemberSignature Language="F#" Value="member this.OriginalCaller : System.EnterpriseServices.SecurityIdentity" Usage="System.EnterpriseServices.SecurityCallContext.OriginalCaller" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::EnterpriseServices::SecurityIdentity ^ OriginalCaller { System::EnterpriseServices::SecurityIdentity ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.EnterpriseServices</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.EnterpriseServices.SecurityIdentity</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a <see cref="T:System.EnterpriseServices.SecurityIdentity" /> that describes the original caller.</summary>
<value>One of the <see cref="T:System.EnterpriseServices.SecurityIdentity" /> values.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>