File: FileSystemSecurity.xml

package info (click to toggle)
mono 6.14.1%2Bds2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,282,732 kB
  • sloc: cs: 11,182,461; xml: 2,850,281; ansic: 699,123; cpp: 122,919; perl: 58,604; javascript: 30,841; asm: 21,845; makefile: 19,602; sh: 10,973; python: 4,772; pascal: 925; sql: 859; sed: 16; php: 1
file content (534 lines) | stat: -rw-r--r-- 52,126 bytes parent folder | download | duplicates (8)
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
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
<?xml version="1.0" encoding="utf-8"?>
<Type Name="FileSystemSecurity" FullName="System.Security.AccessControl.FileSystemSecurity">
  <TypeSignature Language="C#" Value="public abstract class FileSystemSecurity : System.Security.AccessControl.NativeObjectSecurity" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi abstract beforefieldinit FileSystemSecurity extends System.Security.AccessControl.NativeObjectSecurity" />
  <AssemblyInfo>
    <AssemblyName>mscorlib</AssemblyName>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
    <AssemblyVersion>4.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.Security.AccessControl.NativeObjectSecurity</BaseTypeName>
  </Base>
  <Interfaces />
  <Docs>
    <since version=".NET 2.0" />
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>The <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class is the base class for the <see cref="T:System.Security.AccessControl.FileSecurity" /> and <see cref="T:System.Security.AccessControl.DirectorySecurity" /> classes.  These classes represent all of the access rights for a system file or directory and define how access attempts are audited.  </para>
      <para>The <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class represents access and audit rights as a set of rules. Each access rule is represented by a <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object, while each audit rule is represented by a <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object.</para>
      <para>The <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class is an abstraction of the underlying Microsoft Windows file security system. In this system, each file or directory has a discretionary access control list (DACL), which controls access to the file or directory, and a system access control list (SACL), which specifies the access control attempts that are audited.  The <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> and <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> classes are abstractions of access control entries (ACEs) that comprise DACLs and SACLs.      </para>
      <para>The <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class hides many of details of DACLs and SACLs; you do not have to worry about ACE ordering or null DACLS.</para>
      <para>To persist new or changed access control list (ACL) information to a file, use the <see cref="M:System.IO.File.SetAccessControl(System.String,System.Security.AccessControl.FileSecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.  To persist new or changed ACL information to a directory, use the <see cref="M:System.IO.Directory.SetAccessControl(System.String,System.Security.AccessControl.DirectorySecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.</para>
      <para>To retrieve ACL information from a file, use the <see cref="Overload:System.IO.File.GetAccessControl" /> or <see cref="Overload:System.IO.FileInfo.GetAccessControl" /> method.  To retrieve ACL information from a directory, use the <see cref="Overload:System.IO.Directory.GetAccessControl" /> or <see cref="Overload:System.IO.DirectoryInfo.GetAccessControl" /> method.</para>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Represents the access control and audit security for a file or directory.</para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName="AccessRightType">
      <MemberSignature Language="C#" Value="public override Type AccessRightType { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class System.Type AccessRightType" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Type</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Classes that derive from the <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class override the <see cref="P:System.Security.AccessControl.FileSystemSecurity.AccessRightType" /> property and return the type they use to represent access rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct enumeration type to use with each security object. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the enumeration that the <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class uses to represent access rights.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="AccessRuleFactory">
      <MemberSignature Language="C#" Value="public override sealed System.Security.AccessControl.AccessRule AccessRuleFactory (System.Security.Principal.IdentityReference identityReference, int accessMask, bool isInherited, System.Security.AccessControl.InheritanceFlags inheritanceFlags, System.Security.AccessControl.PropagationFlags propagationFlags, System.Security.AccessControl.AccessControlType type);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance class System.Security.AccessControl.AccessRule AccessRuleFactory(class System.Security.Principal.IdentityReference identityReference, int32 accessMask, bool isInherited, valuetype System.Security.AccessControl.InheritanceFlags inheritanceFlags, valuetype System.Security.AccessControl.PropagationFlags propagationFlags, valuetype System.Security.AccessControl.AccessControlType type) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Security.AccessControl.AccessRule</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="identityReference" Type="System.Security.Principal.IdentityReference" />
        <Parameter Name="accessMask" Type="System.Int32" />
        <Parameter Name="isInherited" Type="System.Boolean" />
        <Parameter Name="inheritanceFlags" Type="System.Security.AccessControl.InheritanceFlags" />
        <Parameter Name="propagationFlags" Type="System.Security.AccessControl.PropagationFlags" />
        <Parameter Name="type" Type="System.Security.AccessControl.AccessControlType" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The recommended way to create access control rules is to use the constructors of the <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> class.</para>
          <para>The return type of the <see cref="M:System.Security.AccessControl.FileSystemSecurity.AccessRuleFactory(System.Security.Principal.IdentityReference,System.Int32,System.Boolean,System.Security.AccessControl.InheritanceFlags,System.Security.AccessControl.PropagationFlags,System.Security.AccessControl.AccessControlType)" /> method is the base class, <see cref="T:System.Security.AccessControl.AccessRule" />, but the return value can be cast safely to the derived class.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> class that represents a new access control rule for the specified user, with the specified access rights, access control, and flags.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A new <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object that represents a new access control rule for the specified user, with the specified access rights, access control, and flags.</para>
        </returns>
        <param name="identityReference">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Security.Principal.IdentityReference" /> object that represents a user account.</param>
        <param name="accessMask">
          <attribution license="cc4" from="Microsoft" modified="false" />An integer that specifies an access type.</param>
        <param name="isInherited">
          <attribution license="cc4" from="Microsoft" modified="false" />true if the access rule is inherited; otherwise, false.    </param>
        <param name="inheritanceFlags">
          <attribution license="cc4" from="Microsoft" modified="false" />One of the <see cref="T:System.Security.AccessControl.InheritanceFlags" /> values that specifies how to propagate access masks to child objects.</param>
        <param name="propagationFlags">
          <attribution license="cc4" from="Microsoft" modified="false" />One of the <see cref="T:System.Security.AccessControl.PropagationFlags" /> values that specifies how to propagate Access Control Entries (ACEs) to child objects.</param>
        <param name="type">
          <attribution license="cc4" from="Microsoft" modified="false" />One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values that specifies whether access is allowed or denied.</param>
      </Docs>
    </Member>
    <Member MemberName="AccessRuleType">
      <MemberSignature Language="C#" Value="public override Type AccessRuleType { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class System.Type AccessRuleType" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Type</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Classes that derive from the <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class override the <see cref="P:System.Security.AccessControl.FileSystemSecurity.AccessRuleType" /> property and return the type they use to represent access rules. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct access rule type to use with each security object.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the enumeration that the <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class uses to represent access rules.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="AddAccessRule">
      <MemberSignature Language="C#" Value="public void AddAccessRule (System.Security.AccessControl.FileSystemAccessRule rule);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void AddAccessRule(class System.Security.AccessControl.FileSystemAccessRule rule) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rule" Type="System.Security.AccessControl.FileSystemAccessRule" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Security.AccessControl.FileSystemSecurity.AddAccessRule(System.Security.AccessControl.FileSystemAccessRule)" /> method adds a new rule to the list of rules contained within a <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> object.</para>
          <para>If an access control list (ACL) already exists for the specified rule, the <see cref="M:System.Security.AccessControl.FileSystemSecurity.AddAccessRule(System.Security.AccessControl.FileSystemAccessRule)" /> method will still add the rule, with one exception: a <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object created using the <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> enumeration value supersedes an object created using the <see cref="F:System.Security.AccessControl.AccessControlType.Allow" /> enumeration value.</para>
          <para>To persist new or changed ACL information to a file, use the <see cref="M:System.IO.File.SetAccessControl(System.String,System.Security.AccessControl.FileSecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.  To persist new or changed ACL information to a directory, use the <see cref="M:System.IO.Directory.SetAccessControl(System.String,System.Security.AccessControl.DirectorySecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.</para>
          <para>To retrieve ACL information from a file, use the <see cref="Overload:System.IO.File.GetAccessControl" /> or <see cref="Overload:System.IO.FileInfo.GetAccessControl" /> method.  To retrieve ACL information from a directory, use the <see cref="Overload:System.IO.Directory.GetAccessControl" /> or <see cref="Overload:System.IO.DirectoryInfo.GetAccessControl" /> method.</para>
          <para>When you add an access rule without setting the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag, the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag will be automatically added to your rule.  If you remove the rule later without specifying the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag, the flag will automatically be removed.  </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Adds the specified access control list (ACL) permission to the current file or directory.</para>
        </summary>
        <param name="rule">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object that represents an access control list (ACL) permission to add to a file or directory. </param>
      </Docs>
    </Member>
    <Member MemberName="AddAuditRule">
      <MemberSignature Language="C#" Value="public void AddAuditRule (System.Security.AccessControl.FileSystemAuditRule rule);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void AddAuditRule(class System.Security.AccessControl.FileSystemAuditRule rule) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rule" Type="System.Security.AccessControl.FileSystemAuditRule" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Security.AccessControl.FileSystemSecurity.AddAuditRule(System.Security.AccessControl.FileSystemAuditRule)" /> method adds a new audit rule to the list of rules contained within a <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> object.</para>
          <para>If an audit rule already exists for the specified rule, the <see cref="M:System.Security.AccessControl.FileSystemSecurity.AddAuditRule(System.Security.AccessControl.FileSystemAuditRule)" /> method will still add the rule.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Adds the specified audit rule to the current file or directory.</para>
        </summary>
        <param name="rule">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Security.AccessControl.FileSystemAuditRule" />  object that represents an audit rule to add to a file or directory.</param>
      </Docs>
    </Member>
    <Member MemberName="AuditRuleFactory">
      <MemberSignature Language="C#" Value="public override sealed System.Security.AccessControl.AuditRule AuditRuleFactory (System.Security.Principal.IdentityReference identityReference, int accessMask, bool isInherited, System.Security.AccessControl.InheritanceFlags inheritanceFlags, System.Security.AccessControl.PropagationFlags propagationFlags, System.Security.AccessControl.AuditFlags flags);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance class System.Security.AccessControl.AuditRule AuditRuleFactory(class System.Security.Principal.IdentityReference identityReference, int32 accessMask, bool isInherited, valuetype System.Security.AccessControl.InheritanceFlags inheritanceFlags, valuetype System.Security.AccessControl.PropagationFlags propagationFlags, valuetype System.Security.AccessControl.AuditFlags flags) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Security.AccessControl.AuditRule</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="identityReference" Type="System.Security.Principal.IdentityReference" />
        <Parameter Name="accessMask" Type="System.Int32" />
        <Parameter Name="isInherited" Type="System.Boolean" />
        <Parameter Name="inheritanceFlags" Type="System.Security.AccessControl.InheritanceFlags" />
        <Parameter Name="propagationFlags" Type="System.Security.AccessControl.PropagationFlags" />
        <Parameter Name="flags" Type="System.Security.AccessControl.AuditFlags" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The recommended way to create audit rules is to use the constructors of the <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> class.</para>
          <para>The return type of the <see cref="M:System.Security.AccessControl.FileSystemSecurity.AuditRuleFactory(System.Security.Principal.IdentityReference,System.Int32,System.Boolean,System.Security.AccessControl.InheritanceFlags,System.Security.AccessControl.PropagationFlags,System.Security.AccessControl.AuditFlags)" /> method is the base class, <see cref="T:System.Security.AccessControl.AuditRule" />, but the return value can be cast safely to the derived class.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> class representing the specified audit rule for the specified user.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A new <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object representing the specified audit rule for the specified user.</para>
        </returns>
        <param name="identityReference">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Security.Principal.IdentityReference" /> object that represents a user account.</param>
        <param name="accessMask">
          <attribution license="cc4" from="Microsoft" modified="false" />An integer that specifies an access type.</param>
        <param name="isInherited">
          <attribution license="cc4" from="Microsoft" modified="false" />true if the access rule is inherited; otherwise, false.    </param>
        <param name="inheritanceFlags">
          <attribution license="cc4" from="Microsoft" modified="false" />One of the <see cref="T:System.Security.AccessControl.InheritanceFlags" /> values that specifies how to propagate access masks to child objects.</param>
        <param name="propagationFlags">
          <attribution license="cc4" from="Microsoft" modified="false" />One of the <see cref="T:System.Security.AccessControl.PropagationFlags" /> values that specifies how to propagate Access Control Entries (ACEs) to child objects.</param>
        <param name="flags">
          <attribution license="cc4" from="Microsoft" modified="false" />One of the <see cref="T:System.Security.AccessControl.AuditFlags" /> values that specifies the type of auditing to perform.</param>
      </Docs>
    </Member>
    <Member MemberName="AuditRuleType">
      <MemberSignature Language="C#" Value="public override Type AuditRuleType { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class System.Type AuditRuleType" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Type</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Classes that derive from the <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class override the <see cref="P:System.Security.AccessControl.FileSystemSecurity.AuditRuleType" /> property and return the type they use to represent audit rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct audit rule type to use with each security object.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the type that the <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class uses to represent audit rules.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="RemoveAccessRule">
      <MemberSignature Language="C#" Value="public bool RemoveAccessRule (System.Security.AccessControl.FileSystemAccessRule rule);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool RemoveAccessRule(class System.Security.AccessControl.FileSystemAccessRule rule) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rule" Type="System.Security.AccessControl.FileSystemAccessRule" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Security.AccessControl.FileSystemSecurity.RemoveAccessRule(System.Security.AccessControl.FileSystemAccessRule)" /> method removes either all matching <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> access rules or all matching <see cref="F:System.Security.AccessControl.AccessControlType.Allow" /> access rules from the current <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> object.  For example, you can use this method to remove all <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> access rules for a user by passing a <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object created using the <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> value, the <see cref="F:System.Security.AccessControl.FileSystemRights.Read" /> value, and a user account.  When you do this, the <see cref="M:System.Security.AccessControl.FileSystemSecurity.RemoveAccessRule(System.Security.AccessControl.FileSystemAccessRule)" /> method removes any deny rules that specify the <see cref="F:System.Security.AccessControl.FileSystemRights.Read" /> value or the <see cref="F:System.Security.AccessControl.FileSystemRights.Write" /> value.</para>
          <para>To persist new or changed access control list (ACL) information to a file, use the <see cref="M:System.IO.File.SetAccessControl(System.String,System.Security.AccessControl.FileSecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.  To persist new or changed ACL information to a directory, use the <see cref="M:System.IO.Directory.SetAccessControl(System.String,System.Security.AccessControl.DirectorySecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.</para>
          <para>To retrieve ACL information from a file, use the <see cref="Overload:System.IO.File.GetAccessControl" /> or <see cref="Overload:System.IO.FileInfo.GetAccessControl" /> method.  To retrieve ACL information from a directory, use the <see cref="Overload:System.IO.Directory.GetAccessControl" /> or <see cref="Overload:System.IO.DirectoryInfo.GetAccessControl" /> method.</para>
          <para>When you add an access rule without setting the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag, the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag will be automatically added to your rule.  If you remove the rule later without specifying the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag, the flag will automatically be removed.  </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Removes all matching allow or deny access control list (ACL) permissions from the current file or directory.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>true if the access rule was removed; otherwise, false.</para>
        </returns>
        <param name="rule">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object that represents an access control list (ACL) permission to remove from a file or directory.</param>
      </Docs>
    </Member>
    <Member MemberName="RemoveAccessRuleAll">
      <MemberSignature Language="C#" Value="public void RemoveAccessRuleAll (System.Security.AccessControl.FileSystemAccessRule rule);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void RemoveAccessRuleAll(class System.Security.AccessControl.FileSystemAccessRule rule) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rule" Type="System.Security.AccessControl.FileSystemAccessRule" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Security.AccessControl.FileSystemSecurity.RemoveAccessRuleAll(System.Security.AccessControl.FileSystemAccessRule)" /> method removes all access control list (ACL) permissions for the specified user.  The method ignores all values in the <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object except the user account. </para>
          <para>To persist new or changed ACL information to a file, use the <see cref="M:System.IO.File.SetAccessControl(System.String,System.Security.AccessControl.FileSecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.  To persist new or changed ACL information to a directory, use the <see cref="M:System.IO.Directory.SetAccessControl(System.String,System.Security.AccessControl.DirectorySecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.</para>
          <para>To retrieve ACL information from a file, use the <see cref="Overload:System.IO.File.GetAccessControl" /> or <see cref="Overload:System.IO.FileInfo.GetAccessControl" /> method.  To retrieve ACL information from a directory, use the <see cref="Overload:System.IO.Directory.GetAccessControl" /> or <see cref="Overload:System.IO.DirectoryInfo.GetAccessControl" /> method.</para>
          <para>When you add an access rule without setting the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag, the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag will be automatically added to your rule.  If you remove the rule later without specifying the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag, the flag will automatically be removed.    </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Removes all access control list (ACL) permissions for the specified user from the current file or directory.</para>
        </summary>
        <param name="rule">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object that specifies a user whose access control list (ACL) permissions should be removed from a file or directory.</param>
      </Docs>
    </Member>
    <Member MemberName="RemoveAccessRuleSpecific">
      <MemberSignature Language="C#" Value="public void RemoveAccessRuleSpecific (System.Security.AccessControl.FileSystemAccessRule rule);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void RemoveAccessRuleSpecific(class System.Security.AccessControl.FileSystemAccessRule rule) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rule" Type="System.Security.AccessControl.FileSystemAccessRule" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Security.AccessControl.FileSystemSecurity.RemoveAccessRuleSpecific(System.Security.AccessControl.FileSystemAccessRule)" /> method removes the specified <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> access rule or the specified matching <see cref="F:System.Security.AccessControl.AccessControlType.Allow" /> access rule from the current <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> object.  For example, you can use this method to remove a specified <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> access rule for a user by passing a <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object created using the <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> value, the <see cref="F:System.Security.AccessControl.FileSystemRights.Read" /> value, and a user account.  When you do this, the <see cref="M:System.Security.AccessControl.FileSystemSecurity.RemoveAccessRuleSpecific(System.Security.AccessControl.FileSystemAccessRule)" /> method removes only the deny rule that specifies the <see cref="F:System.Security.AccessControl.FileSystemRights.Read" /> value.  It does not remove any deny rules that specify the <see cref="F:System.Security.AccessControl.FileSystemRights.Write" /> value.</para>
          <para>To persist new or changed access control list (ACL) information to a file, use the <see cref="M:System.IO.File.SetAccessControl(System.String,System.Security.AccessControl.FileSecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.  To persist new or changed ACL information to a directory, use the <see cref="M:System.IO.Directory.SetAccessControl(System.String,System.Security.AccessControl.DirectorySecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.</para>
          <para>To retrieve ACL information from a file, use the <see cref="Overload:System.IO.File.GetAccessControl" /> or <see cref="Overload:System.IO.FileInfo.GetAccessControl" /> method.  To retrieve ACL information from a directory, use the <see cref="Overload:System.IO.Directory.GetAccessControl" /> or <see cref="Overload:System.IO.DirectoryInfo.GetAccessControl" /> method.</para>
          <para>When you add an access rule without setting the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag, the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag will be automatically added to your rule.  If you remove the rule later without specifying the <see cref="F:System.Security.AccessControl.FileSystemRights.Synchronize" /> flag, the flag will automatically be removed.  </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Removes a single matching allow or deny access control list (ACL) permission from the current file or directory.</para>
        </summary>
        <param name="rule">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object that specifies a user whose access control list (ACL) permissions should be removed from a file or directory.</param>
      </Docs>
    </Member>
    <Member MemberName="RemoveAuditRule">
      <MemberSignature Language="C#" Value="public bool RemoveAuditRule (System.Security.AccessControl.FileSystemAuditRule rule);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool RemoveAuditRule(class System.Security.AccessControl.FileSystemAuditRule rule) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rule" Type="System.Security.AccessControl.FileSystemAuditRule" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Security.AccessControl.FileSystemSecurity.RemoveAuditRule(System.Security.AccessControl.FileSystemAuditRule)" /> method removes either all matching <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> audit rules or all matching <see cref="F:System.Security.AccessControl.AccessControlType.Allow" /> audit rules from the current <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> object.  For example, you can use this method to remove all <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> audit rules for a user by passing a <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object created using the <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> value, the <see cref="F:System.Security.AccessControl.AuditFlags.Failure" /> value, and a user account.  When you do this, the <see cref="M:System.Security.AccessControl.FileSystemSecurity.RemoveAuditRule(System.Security.AccessControl.FileSystemAuditRule)" /> method removes any deny rules that specify the <see cref="F:System.Security.AccessControl.AuditFlags.Failure" /> value or the <see cref="F:System.Security.AccessControl.AuditFlags.Success" /> value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Removes all matching allow or deny audit rules from the current file or directory.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>true if the audit rule was removed; otherwise, false</para>
        </returns>
        <param name="rule">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Security.AccessControl.FileSystemAuditRule" />  object that represents an audit rule to remove from a file or directory.</param>
      </Docs>
    </Member>
    <Member MemberName="RemoveAuditRuleAll">
      <MemberSignature Language="C#" Value="public void RemoveAuditRuleAll (System.Security.AccessControl.FileSystemAuditRule rule);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void RemoveAuditRuleAll(class System.Security.AccessControl.FileSystemAuditRule rule) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rule" Type="System.Security.AccessControl.FileSystemAuditRule" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Security.AccessControl.FileSystemSecurity.RemoveAuditRuleAll(System.Security.AccessControl.FileSystemAuditRule)" /> method removes all audit rules for the specified user.  It ignores all values in the <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object except the user account.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Removes all audit rules for the specified user from the current file or directory.</para>
        </summary>
        <param name="rule">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object that specifies a user whose audit rules should be removed from a file or directory.</param>
      </Docs>
    </Member>
    <Member MemberName="RemoveAuditRuleSpecific">
      <MemberSignature Language="C#" Value="public void RemoveAuditRuleSpecific (System.Security.AccessControl.FileSystemAuditRule rule);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void RemoveAuditRuleSpecific(class System.Security.AccessControl.FileSystemAuditRule rule) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rule" Type="System.Security.AccessControl.FileSystemAuditRule" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Security.AccessControl.FileSystemSecurity.RemoveAuditRuleSpecific(System.Security.AccessControl.FileSystemAuditRule)" /> method removes the specified matching <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> audit rule or the specified matching <see cref="F:System.Security.AccessControl.AccessControlType.Allow" /> audit rule from the current <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> object.  For example, you can use this method to remove a specified <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> audit rule for a user by passing a <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object created using the <see cref="F:System.Security.AccessControl.AccessControlType.Deny" /> value, the <see cref="F:System.Security.AccessControl.AuditFlags.Failure" /> value, and a user account.  When you do this, the <see cref="M:System.Security.AccessControl.FileSystemSecurity.RemoveAuditRuleSpecific(System.Security.AccessControl.FileSystemAuditRule)" /> method removes only a deny rule that specifies the <see cref="F:System.Security.AccessControl.AuditFlags.Failure" /> value.  It does not remove any deny rules that specify the <see cref="F:System.Security.AccessControl.AuditFlags.Success" /> value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Removes a single matching allow or deny audit rule from the current file or directory.</para>
        </summary>
        <param name="rule">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Security.AccessControl.FileSystemAuditRule" />  object that represents an audit rule to remove from a file or directory.</param>
      </Docs>
    </Member>
    <Member MemberName="ResetAccessRule">
      <MemberSignature Language="C#" Value="public void ResetAccessRule (System.Security.AccessControl.FileSystemAccessRule rule);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void ResetAccessRule(class System.Security.AccessControl.FileSystemAccessRule rule) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rule" Type="System.Security.AccessControl.FileSystemAccessRule" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Security.AccessControl.FileSystemSecurity.ResetAccessRule(System.Security.AccessControl.FileSystemAccessRule)" /> method adds the specified access control list (ACL) rule or overwrites any identical ACL rules that match the <paramref name="rule" /> parameter.  For example, if the <paramref name="rule" /> parameter specifies a <see cref="F:System.Security.AccessControl.FileSystemRights.Read" /> value and the <see cref="M:System.Security.AccessControl.FileSystemSecurity.ResetAccessRule(System.Security.AccessControl.FileSystemAccessRule)" /> method finds an identical ACL rule that specifies the <see cref="F:System.Security.AccessControl.FileSystemRights.Read" /> value, the identical rule will be overwritten.  If the <see cref="M:System.Security.AccessControl.FileSystemSecurity.ResetAccessRule(System.Security.AccessControl.FileSystemAccessRule)" /> method finds an identical ACL rule that specifies the <see cref="F:System.Security.AccessControl.FileSystemRights.Write" /> value, the identical rule will also be overwritten. </para>
          <para>To persist new or changed ACL information to a file, use the <see cref="M:System.IO.File.SetAccessControl(System.String,System.Security.AccessControl.FileSecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.  To persist new or changed ACL information to a directory, use the <see cref="M:System.IO.Directory.SetAccessControl(System.String,System.Security.AccessControl.DirectorySecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.</para>
          <para>To retrieve ACL information from a file, use the <see cref="Overload:System.IO.File.GetAccessControl" /> or <see cref="Overload:System.IO.FileInfo.GetAccessControl" /> method.  To retrieve ACL information from a directory, use the <see cref="Overload:System.IO.Directory.GetAccessControl" /> or <see cref="Overload:System.IO.DirectoryInfo.GetAccessControl" /> method.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Adds the specified access control list (ACL) permission to the current file or directory and removes all matching ACL permissions.</para>
        </summary>
        <param name="rule">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object that represents an access control list (ACL) permission to add to a file or directory.</param>
      </Docs>
    </Member>
    <Member MemberName="SetAccessRule">
      <MemberSignature Language="C#" Value="public void SetAccessRule (System.Security.AccessControl.FileSystemAccessRule rule);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void SetAccessRule(class System.Security.AccessControl.FileSystemAccessRule rule) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rule" Type="System.Security.AccessControl.FileSystemAccessRule" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Security.AccessControl.FileSystemSecurity.SetAccessRule(System.Security.AccessControl.FileSystemAccessRule)" /> method adds the specified access control list (ACL) rule or overwrites any identical ACL rules that match the <see cref="T:System.Security.AccessControl.FileSystemRights" /> value of the <paramref name="rule" /> parameter.  For example, if the <paramref name="rule" /> parameter specifies a <see cref="F:System.Security.AccessControl.FileSystemRights.Read" /> value and the <see cref="M:System.Security.AccessControl.FileSystemSecurity.SetAccessRule(System.Security.AccessControl.FileSystemAccessRule)" /> method finds an identical ACL rule that specifies the <see cref="F:System.Security.AccessControl.FileSystemRights.Read" /> value, the identical rule will be overwritten.  If the <see cref="M:System.Security.AccessControl.FileSystemSecurity.SetAccessRule(System.Security.AccessControl.FileSystemAccessRule)" /> method finds an identical ACL rule that specifies the <see cref="F:System.Security.AccessControl.FileSystemRights.Write" /> value, the identical rule will not be overwritten. </para>
          <para>To persist new or changed ACL information to a file, use the <see cref="M:System.IO.File.SetAccessControl(System.String,System.Security.AccessControl.FileSecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.  To persist new or changed ACL information to a directory, use the <see cref="M:System.IO.Directory.SetAccessControl(System.String,System.Security.AccessControl.DirectorySecurity)" /> or <see cref="M:System.IO.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)" /> method.</para>
          <para>To retrieve ACL information from a file, use the <see cref="Overload:System.IO.File.GetAccessControl" /> or <see cref="Overload:System.IO.FileInfo.GetAccessControl" /> method.  To retrieve ACL information from a directory, use the <see cref="Overload:System.IO.Directory.GetAccessControl" /> or <see cref="Overload:System.IO.DirectoryInfo.GetAccessControl" /> method.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Sets the specified access control list (ACL) permission for the current file or directory. </para>
        </summary>
        <param name="rule">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object that represents an access control list (ACL) permission to set for a file or directory.</param>
      </Docs>
    </Member>
    <Member MemberName="SetAuditRule">
      <MemberSignature Language="C#" Value="public void SetAuditRule (System.Security.AccessControl.FileSystemAuditRule rule);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void SetAuditRule(class System.Security.AccessControl.FileSystemAuditRule rule) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rule" Type="System.Security.AccessControl.FileSystemAuditRule" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Security.AccessControl.FileSystemSecurity.SetAuditRule(System.Security.AccessControl.FileSystemAuditRule)" /> method adds the specified audit rule or overwrites any identical audit rules that match the <see cref="T:System.Security.AccessControl.FileSystemRights" /> value of the <paramref name="rule" /> parameter.  For example, if the <paramref name="rule" /> parameter specifies a <see cref="F:System.Security.AccessControl.FileSystemRights.Read" /> value and the <see cref="M:System.Security.AccessControl.FileSystemSecurity.SetAuditRule(System.Security.AccessControl.FileSystemAuditRule)" /> method finds an identical audit rule that specifies the <see cref="F:System.Security.AccessControl.FileSystemRights.Read" /> value, the identical rule will be overwritten.  If the <see cref="M:System.Security.AccessControl.FileSystemSecurity.SetAuditRule(System.Security.AccessControl.FileSystemAuditRule)" /> method finds an identical audit rule that specifies the <see cref="F:System.Security.AccessControl.FileSystemRights.Write" /> value, the identical rule will not be overwritten. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Sets the specified audit rule for the current file or directory.</para>
        </summary>
        <param name="rule">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object that represents an audit rule to set for a file or directory.</param>
      </Docs>
    </Member>
  </Members>
</Type>