File: RegistryAccessRule.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 (378 lines) | stat: -rw-r--r-- 28,504 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
<?xml version="1.0" encoding="utf-8"?>
<Type Name="RegistryAccessRule" FullName="System.Security.AccessControl.RegistryAccessRule">
  <TypeSignature Language="C#" Value="public sealed class RegistryAccessRule : System.Security.AccessControl.AccessRule" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit RegistryAccessRule extends System.Security.AccessControl.AccessRule" />
  <AssemblyInfo>
    <AssemblyName>mscorlib</AssemblyName>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
    <AssemblyVersion>4.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.Security.AccessControl.AccessRule</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.RegistryAccessRule" /> class is one of a set of classes that the .NET Framework provides for managing Windows access control security on registry keys. For an overview of these classes, and their relationship to the underlying Windows access control structures, see <see cref="T:System.Security.AccessControl.RegistrySecurity" />.</para>
      <block subset="none" type="note">
        <para>Windows access control security can only be applied to registry keys. It cannot be applied to individual key/value pairs stored in a key. </para>
      </block>
      <para>To get a list of the rules currently applied to a registry key, use the <see cref="M:Microsoft.Win32.RegistryKey.GetAccessControl" /> method to get a <see cref="T:System.Security.AccessControl.RegistrySecurity" /> object, and then use its <see cref="M:System.Security.AccessControl.CommonObjectSecurity.GetAccessRules(System.Boolean,System.Boolean,System.Type)" /> method to obtain a collection of <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> objects.</para>
      <para>
        <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> objects do not map one-to-one with access control entries in the underlying discretionary control access list (DACL). When you get the set of all access rules for a registry key, the set contains the minimum number of rules currently required to express all the access control entries. </para>
      <block subset="none" type="note">
        <para>The underlying access control entries change as you apply and remove rules. The information in rules is merged if possible, to maintain the smallest number of access control entries. Thus, when you read the current list of rules, it might not look exactly like the list of all the rules you have added.</para>
      </block>
      <para>Use <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> objects to specify access rights to allow or deny to a user or group. A <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> object always represents either allowed access or denied access, never both.</para>
      <para>To apply a rule to a registry key, use the <see cref="M:Microsoft.Win32.RegistryKey.GetAccessControl" /> method to get the <see cref="T:System.Security.AccessControl.RegistrySecurity" /> object. Modify the <see cref="T:System.Security.AccessControl.RegistrySecurity" /> object by using its methods to add the rule, and then use the <see cref="M:Microsoft.Win32.RegistryKey.SetAccessControl(System.Security.AccessControl.RegistrySecurity)" /> method to reattach the security object.</para>
      <block subset="none" type="note">
        <para>Changes you make to a <see cref="T:System.Security.AccessControl.RegistrySecurity" /> object do not affect the access levels of the registry key until you call the <see cref="M:Microsoft.Win32.RegistryKey.SetAccessControl(System.Security.AccessControl.RegistrySecurity)" /> method to assign the altered security object to the registry key.</para>
      </block>
      <para>
        <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> objects are immutable. Security for a registry key is modified using the methods of the <see cref="T:System.Security.AccessControl.RegistrySecurity" /> class to add or remove rules; as you do this, the underlying access control entries are modified. </para>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Represents a set of access rights allowed or denied for a user or group. This class cannot be inherited.</para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public RegistryAccessRule (System.Security.Principal.IdentityReference identity, System.Security.AccessControl.RegistryRights registryRights, System.Security.AccessControl.AccessControlType type);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Security.Principal.IdentityReference identity, valuetype System.Security.AccessControl.RegistryRights registryRights, valuetype System.Security.AccessControl.AccessControlType type) cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Parameters>
        <Parameter Name="identity" Type="System.Security.Principal.IdentityReference" />
        <Parameter Name="registryRights" Type="System.Security.AccessControl.RegistryRights" />
        <Parameter Name="type" Type="System.Security.AccessControl.AccessControlType" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This constructor specifies default propagation and inheritance. That is, <see cref="F:System.Security.AccessControl.InheritanceFlags.None" /> and <see cref="F:System.Security.AccessControl.PropagationFlags.None" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> class, specifying the user or group the rule applies to, the access rights, and whether the specified access rights are allowed or denied.</para>
        </summary>
        <param name="identity">
          <attribution license="cc4" from="Microsoft" modified="false" />The user or group the rule applies to. Must be of type <see cref="T:System.Security.Principal.SecurityIdentifier" /> or a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
        <param name="registryRights">
          <attribution license="cc4" from="Microsoft" modified="false" />A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values indicating the rights allowed or denied.</param>
        <param name="type">
          <attribution license="cc4" from="Microsoft" modified="false" />One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values indicating whether the rights are allowed or denied.</param>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public RegistryAccessRule (string identity, System.Security.AccessControl.RegistryRights registryRights, System.Security.AccessControl.AccessControlType type);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string identity, valuetype System.Security.AccessControl.RegistryRights registryRights, valuetype System.Security.AccessControl.AccessControlType type) cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Parameters>
        <Parameter Name="identity" Type="System.String" />
        <Parameter Name="registryRights" Type="System.Security.AccessControl.RegistryRights" />
        <Parameter Name="type" Type="System.Security.AccessControl.AccessControlType" />
      </Parameters>
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This constructor specifies default propagation and inheritance. That is, <see cref="F:System.Security.AccessControl.InheritanceFlags.None" /> and <see cref="F:System.Security.AccessControl.PropagationFlags.None" />.</para>
          <para>This constructor is equivalent to creating an <see cref="T:System.Security.Principal.NTAccount" /> object, by passing <paramref name="identity" /> to the <see cref="M:System.Security.Principal.NTAccount.#ctor(System.String)" /> constructor, and passing the newly created <see cref="T:System.Security.Principal.NTAccount" /> object to the <see cref="M:System.Security.AccessControl.RegistryAccessRule.#ctor(System.Security.Principal.IdentityReference,System.Security.AccessControl.RegistryRights,System.Security.AccessControl.AccessControlType)" /> constructor.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> class, specifying the name of the user or group the rule applies to, the access rights, and whether the specified access rights are allowed or denied.</para>
        </summary>
        <param name="identity">
          <attribution license="cc4" from="Microsoft" modified="false" />The name of the user or group the rule applies to.</param>
        <param name="registryRights">
          <attribution license="cc4" from="Microsoft" modified="false" />A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values indicating the rights allowed or denied.</param>
        <param name="type">
          <attribution license="cc4" from="Microsoft" modified="false" />One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values indicating whether the rights are allowed or denied.</param>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public RegistryAccessRule (System.Security.Principal.IdentityReference identity, System.Security.AccessControl.RegistryRights registryRights, System.Security.AccessControl.InheritanceFlags inheritanceFlags, System.Security.AccessControl.PropagationFlags propagationFlags, System.Security.AccessControl.AccessControlType type);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Security.Principal.IdentityReference identity, valuetype System.Security.AccessControl.RegistryRights registryRights, valuetype System.Security.AccessControl.InheritanceFlags inheritanceFlags, valuetype System.Security.AccessControl.PropagationFlags propagationFlags, valuetype System.Security.AccessControl.AccessControlType type) cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Parameters>
        <Parameter Name="identity" Type="System.Security.Principal.IdentityReference" />
        <Parameter Name="registryRights" Type="System.Security.AccessControl.RegistryRights" />
        <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>All registry keys are containers, so the only inheritance flag that is meaningful for registry keys is the <see cref="F:System.Security.AccessControl.InheritanceFlags.ContainerInherit" /> flag. If this flag is not specified, the propagation flags are ignored, and only the immediate key is affected. If the flag is present, the rule is propagated as shown in the following table. The table assumes there is a subkey S with child subkey CS and grandchild subkey GS. That is, the path for the grandchild subkey is S\CS\GS.</para>
          <list type="table">
            <listheader>
              <item>
                <term>
                  <para>Propagation flags</para>
                </term>
                <description>
                  <para>S</para>
                </description>
                <description>
                  <para>CS</para>
                </description>
                <description>
                  <para>GS</para>
                </description>
              </item>
            </listheader>
            <item>
              <term>
                <para>
                  <see cref="F:System.Security.AccessControl.PropagationFlags.None" />
                </para>
              </term>
              <description>
                <para>X</para>
              </description>
              <description>
                <para>X</para>
              </description>
              <description>
                <para>X</para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="F:System.Security.AccessControl.PropagationFlags.NoPropagateInherit" />
                </para>
              </term>
              <description>
                <para>X</para>
              </description>
              <description>
                <para>X</para>
              </description>
              <description>
                <para> </para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="F:System.Security.AccessControl.PropagationFlags.InheritOnly" />
                </para>
              </term>
              <description>
                <para> </para>
              </description>
              <description>
                <para>X</para>
              </description>
              <description>
                <para>X</para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="F:System.Security.AccessControl.PropagationFlags.NoPropagateInherit" />, <see cref="F:System.Security.AccessControl.PropagationFlags.InheritOnly" /></para>
              </term>
              <description>
                <para> </para>
              </description>
              <description>
                <para>X</para>
              </description>
              <description>
                <para> </para>
              </description>
            </item>
          </list>
          <para>The pattern for the grandchild subkey governs all subkeys contained by the grandchild subkey. </para>
          <para>For example, if the <see cref="F:System.Security.AccessControl.InheritanceFlags.ContainerInherit" /> flag is specified for <paramref name="inheritanceFlags" /> and the <see cref="F:System.Security.AccessControl.PropagationFlags.InheritOnly" /> propagation flag is specified for <paramref name="propagationFlags" />, this rule does not apply to the immediate subkey, but does apply to all its immediate child subkeys and to all subkeys they contain. </para>
          <block subset="none" type="note">
            <para>Although you can specify the <see cref="F:System.Security.AccessControl.InheritanceFlags.ObjectInherit" /> flag for <paramref name="inheritanceFlags" />, there is no point in doing so. For the purposes of access control, the name/value pairs in a subkey are not separate objects. The access rights to name/value pairs are controlled by the rights of the subkey. Furthermore, since all subkeys are containers (that is, they can contain other subkeys), they are not affected by the <see cref="F:System.Security.AccessControl.InheritanceFlags.ObjectInherit" /> flag. Finally, specifying the <see cref="F:System.Security.AccessControl.InheritanceFlags.ObjectInherit" /> flag needlessly complicates the maintenance of rules, because it interferes with the combination of otherwise compatible rules.</para>
          </block>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> class, specifying the user or group the rule applies to, the access rights, the inheritance flags, the propagation flags, and whether the specified access rights are allowed or denied.</para>
        </summary>
        <param name="identity">
          <attribution license="cc4" from="Microsoft" modified="false" />The user or group the rule applies to. Must be of type <see cref="T:System.Security.Principal.SecurityIdentifier" /> or a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
        <param name="registryRights">
          <attribution license="cc4" from="Microsoft" modified="false" />A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values specifying the rights allowed or denied.</param>
        <param name="inheritanceFlags">
          <attribution license="cc4" from="Microsoft" modified="false" />A bitwise combination of <see cref="T:System.Security.AccessControl.InheritanceFlags" /> flags specifying how access rights are inherited from other objects.</param>
        <param name="propagationFlags">
          <attribution license="cc4" from="Microsoft" modified="false" />A bitwise combination of <see cref="T:System.Security.AccessControl.PropagationFlags" /> flags specifying how access rights are propagated to other objects.</param>
        <param name="type">
          <attribution license="cc4" from="Microsoft" modified="false" />One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values specifying whether the rights are allowed or denied.</param>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public RegistryAccessRule (string identity, System.Security.AccessControl.RegistryRights registryRights, System.Security.AccessControl.InheritanceFlags inheritanceFlags, System.Security.AccessControl.PropagationFlags propagationFlags, System.Security.AccessControl.AccessControlType type);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string identity, valuetype System.Security.AccessControl.RegistryRights registryRights, valuetype System.Security.AccessControl.InheritanceFlags inheritanceFlags, valuetype System.Security.AccessControl.PropagationFlags propagationFlags, valuetype System.Security.AccessControl.AccessControlType type) cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Parameters>
        <Parameter Name="identity" Type="System.String" />
        <Parameter Name="registryRights" Type="System.Security.AccessControl.RegistryRights" />
        <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>All registry keys are containers, so the only inheritance flag that is meaningful for registry keys is the <see cref="F:System.Security.AccessControl.InheritanceFlags.ContainerInherit" /> flag. If this flag is not specified, the propagation flags are ignored, and only the immediate key is affected. If the flag is present, the rule is propagated as shown in the following table. The table assumes there is a subkey S with child subkey CS and grandchild subkey GS. That is, the path for the grandchild subkey is S\CS\GS.</para>
          <list type="table">
            <listheader>
              <item>
                <term>
                  <para>Propagation flags</para>
                </term>
                <description>
                  <para>S</para>
                </description>
                <description>
                  <para>CS</para>
                </description>
                <description>
                  <para>GS</para>
                </description>
              </item>
            </listheader>
            <item>
              <term>
                <para>
                  <see cref="F:System.Security.AccessControl.PropagationFlags.None" />
                </para>
              </term>
              <description>
                <para>X</para>
              </description>
              <description>
                <para>X</para>
              </description>
              <description>
                <para>X</para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="F:System.Security.AccessControl.PropagationFlags.NoPropagateInherit" />
                </para>
              </term>
              <description>
                <para>X</para>
              </description>
              <description>
                <para>X</para>
              </description>
              <description>
                <para> </para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="F:System.Security.AccessControl.PropagationFlags.InheritOnly" />
                </para>
              </term>
              <description>
                <para> </para>
              </description>
              <description>
                <para>X</para>
              </description>
              <description>
                <para>X</para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="F:System.Security.AccessControl.PropagationFlags.NoPropagateInherit" />, <see cref="F:System.Security.AccessControl.PropagationFlags.InheritOnly" /></para>
              </term>
              <description>
                <para> </para>
              </description>
              <description>
                <para>X</para>
              </description>
              <description>
                <para> </para>
              </description>
            </item>
          </list>
          <para>The pattern for the grandchild subkey governs all subkeys contained by the grandchild subkey. </para>
          <para>For example, if the <see cref="F:System.Security.AccessControl.InheritanceFlags.ContainerInherit" /> flag is specified for <paramref name="inheritanceFlags" /> and the <see cref="F:System.Security.AccessControl.PropagationFlags.InheritOnly" /> propagation flag is specified for <paramref name="propagationFlags" />, this rule does not apply to the immediate subkey, but does apply to all its immediate child subkeys and to all subkeys they contain. </para>
          <block subset="none" type="note">
            <para>Although you can specify the <see cref="F:System.Security.AccessControl.InheritanceFlags.ObjectInherit" /> flag for <paramref name="inheritanceFlags" />, there is no point in doing so. For the purposes of access control, the name/value pairs in a subkey are not separate objects. The access rights to name/value pairs are controlled by the rights of the subkey. Furthermore, since all subkeys are containers (that is, they can contain other subkeys), they are not affected by the <see cref="F:System.Security.AccessControl.InheritanceFlags.ObjectInherit" /> flag. Finally, specifying the <see cref="F:System.Security.AccessControl.InheritanceFlags.ObjectInherit" /> flag needlessly complicates the maintenance of rules, because it interferes with the combination of otherwise compatible rules.</para>
          </block>
          <para>This constructor is equivalent to creating an <see cref="T:System.Security.Principal.NTAccount" /> object, by passing <paramref name="identity" /> to the <see cref="M:System.Security.Principal.NTAccount.#ctor(System.String)" /> constructor, and passing the newly created <see cref="T:System.Security.Principal.NTAccount" /> object to the <see cref="M:System.Security.AccessControl.RegistryAccessRule.#ctor(System.Security.Principal.IdentityReference,System.Security.AccessControl.RegistryRights,System.Security.AccessControl.InheritanceFlags,System.Security.AccessControl.PropagationFlags,System.Security.AccessControl.AccessControlType)" /> constructor.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> class, specifying the name of the user or group the rule applies to, the access rights, the inheritance flags, the propagation flags, and whether the specified access rights are allowed or denied.</para>
        </summary>
        <param name="identity">
          <attribution license="cc4" from="Microsoft" modified="false" />The name of the user or group the rule applies to.</param>
        <param name="registryRights">
          <attribution license="cc4" from="Microsoft" modified="false" />A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values indicating the rights allowed or denied.</param>
        <param name="inheritanceFlags">
          <attribution license="cc4" from="Microsoft" modified="false" />A bitwise combination of <see cref="T:System.Security.AccessControl.InheritanceFlags" /> flags specifying how access rights are inherited from other objects.</param>
        <param name="propagationFlags">
          <attribution license="cc4" from="Microsoft" modified="false" />A bitwise combination of <see cref="T:System.Security.AccessControl.PropagationFlags" /> flags specifying how access rights are propagated to other objects.</param>
        <param name="type">
          <attribution license="cc4" from="Microsoft" modified="false" />One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values specifying whether the rights are allowed or denied.</param>
      </Docs>
    </Member>
    <Member MemberName="RegistryRights">
      <MemberSignature Language="C#" Value="public System.Security.AccessControl.RegistryRights RegistryRights { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance valuetype System.Security.AccessControl.RegistryRights RegistryRights" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Security.AccessControl.RegistryRights</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>
            <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> objects are immutable. You can create a new access rule representing a different user, different rights, or a different <see cref="T:System.Security.AccessControl.AccessControlType" />, but you cannot modify an existing access rule.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the rights allowed or denied by the access rule.</para>
        </summary>
      </Docs>
    </Member>
  </Members>
</Type>