scripts
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the actions that are permitted for securable objects.</summary>
|
||||
// Token: 0x020004A1 RID: 1185
|
||||
[Flags]
|
||||
public enum AccessControlActions
|
||||
{
|
||||
/// <summary>Specifies no access.</summary>
|
||||
// Token: 0x04001158 RID: 4440
|
||||
None = 0,
|
||||
/// <summary>Specifies read-only access.</summary>
|
||||
// Token: 0x04001159 RID: 4441
|
||||
View = 1,
|
||||
/// <summary>Specifies write-only access.</summary>
|
||||
// Token: 0x0400115A RID: 4442
|
||||
Change = 2
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the type of access control modification to perform. This enumeration is used by methods of the <see cref="T:System.Security.AccessControl.ObjectSecurity" /> class and its descendents.</summary>
|
||||
// Token: 0x020004A2 RID: 1186
|
||||
public enum AccessControlModification
|
||||
{
|
||||
/// <summary>Add the specified authorization rule to the access control list (ACL).</summary>
|
||||
// Token: 0x0400115C RID: 4444
|
||||
Add,
|
||||
/// <summary>Remove all authorization rules from the ACL, then add the specified authorization rule to the ACL.</summary>
|
||||
// Token: 0x0400115D RID: 4445
|
||||
Set,
|
||||
/// <summary>Remove authorization rules that contain the same SID as the specified authorization rule from the ACL, and then add the specified authorization rule to the ACL.</summary>
|
||||
// Token: 0x0400115E RID: 4446
|
||||
Reset,
|
||||
/// <summary>Remove authorization rules that contain the same security identifier (SID) and access mask as the specified authorization rule from the ACL.</summary>
|
||||
// Token: 0x0400115F RID: 4447
|
||||
Remove,
|
||||
/// <summary>Remove authorization rules that contain the same SID as the specified authorization rule from the ACL.</summary>
|
||||
// Token: 0x04001160 RID: 4448
|
||||
RemoveAll,
|
||||
/// <summary>Remove authorization rules that exactly match the specified authorization rule from the ACL.</summary>
|
||||
// Token: 0x04001161 RID: 4449
|
||||
RemoveSpecific
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies which sections of a security descriptor to save or load.</summary>
|
||||
// Token: 0x020004A3 RID: 1187
|
||||
[Flags]
|
||||
public enum AccessControlSections
|
||||
{
|
||||
/// <summary>No sections.</summary>
|
||||
// Token: 0x04001163 RID: 4451
|
||||
None = 0,
|
||||
/// <summary>The system access control list (SACL).</summary>
|
||||
// Token: 0x04001164 RID: 4452
|
||||
Audit = 1,
|
||||
/// <summary>The discretionary access control list (DACL).</summary>
|
||||
// Token: 0x04001165 RID: 4453
|
||||
Access = 2,
|
||||
/// <summary>The owner.</summary>
|
||||
// Token: 0x04001166 RID: 4454
|
||||
Owner = 4,
|
||||
/// <summary>The primary group.</summary>
|
||||
// Token: 0x04001167 RID: 4455
|
||||
Group = 8,
|
||||
/// <summary>The entire security descriptor.</summary>
|
||||
// Token: 0x04001168 RID: 4456
|
||||
All = 15
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies whether an <see cref="T:System.Security.AccessControl.AccessRule" /> object is used to allow or deny access. These values are not flags, and they cannot be combined.</summary>
|
||||
// Token: 0x020004A4 RID: 1188
|
||||
public enum AccessControlType
|
||||
{
|
||||
/// <summary>The <see cref="T:System.Security.AccessControl.AccessRule" /> object is used to allow access to a secured object.</summary>
|
||||
// Token: 0x0400116A RID: 4458
|
||||
Allow,
|
||||
/// <summary>The <see cref="T:System.Security.AccessControl.AccessRule" /> object is used to deny access to a secured object.</summary>
|
||||
// Token: 0x0400116B RID: 4459
|
||||
Deny
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a combination of a user's identity, an access mask, and an access control type (allow or deny). An <see cref="T:System.Security.AccessControl.AccessRule" /> object also contains information about the how the rule is inherited by child objects and how that inheritance is propagated.</summary>
|
||||
// Token: 0x020004A5 RID: 1189
|
||||
public abstract class AccessRule : AuthorizationRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.AccessRule" /> class by using the specified values.</summary>
|
||||
/// <param name="identity">The identity to which the access rule applies. This parameter must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="accessMask">The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.</param>
|
||||
/// <param name="isInherited">true if this rule is inherited from a parent container.</param>
|
||||
/// <param name="inheritanceFlags">The inheritance properties of the access rule.</param>
|
||||
/// <param name="propagationFlags">Whether inherited access rules are automatically propagated. The propagation flags are ignored if <paramref name="inheritanceFlags" /> is set to <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="type">The valid access control type.</param>
|
||||
/// <exception cref="T:System.ArgumentException">The value of the <paramref name="identity" /> parameter cannot be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />, or the <paramref name="type" /> parameter contains an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">The value of the <paramref name="accessMask" /> parameter is zero, or the <paramref name="inheritanceFlags" /> or <paramref name="propagationFlags" /> parameters contain unrecognized flag values.</exception>
|
||||
// Token: 0x06002CA8 RID: 11432 RVA: 0x00092DCC File Offset: 0x00090FCC
|
||||
protected AccessRule(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
|
||||
: base(identity, accessMask, isInherited, inheritanceFlags, propagationFlags)
|
||||
{
|
||||
if (!(identity is SecurityIdentifier))
|
||||
{
|
||||
throw new ArgumentException("identity");
|
||||
}
|
||||
if (type < AccessControlType.Allow || type > AccessControlType.Deny)
|
||||
{
|
||||
throw new ArgumentException("type");
|
||||
}
|
||||
if (accessMask == 0)
|
||||
{
|
||||
throw new ArgumentOutOfRangeException();
|
||||
}
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
/// <summary>Gets the <see cref="T:System.Security.AccessControl.AccessControlType" /> value associated with this <see cref="T:System.Security.AccessControl.AccessRule" /> object.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.AccessControlType" /> value associated with this <see cref="T:System.Security.AccessControl.AccessRule" /> object.</returns>
|
||||
// Token: 0x170008B6 RID: 2230
|
||||
// (get) Token: 0x06002CA9 RID: 11433 RVA: 0x00092E2C File Offset: 0x0009102C
|
||||
public AccessControlType AccessControlType
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.type;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0400116C RID: 4460
|
||||
private AccessControlType type;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Provides the ability to iterate through the access control entries (ACEs) in an access control list (ACL). </summary>
|
||||
// Token: 0x020004A6 RID: 1190
|
||||
public sealed class AceEnumerator : IEnumerator
|
||||
{
|
||||
// Token: 0x06002CAA RID: 11434 RVA: 0x00092E34 File Offset: 0x00091034
|
||||
internal AceEnumerator(GenericAcl owner)
|
||||
{
|
||||
this.owner = owner;
|
||||
}
|
||||
|
||||
// Token: 0x170008B7 RID: 2231
|
||||
// (get) Token: 0x06002CAB RID: 11435 RVA: 0x00092E4C File Offset: 0x0009104C
|
||||
object IEnumerator.Current
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.Current;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the current element in the <see cref="T:System.Security.AccessControl.GenericAce" /> collection. This property gets the type-friendly version of the object. </summary>
|
||||
/// <returns>The current element in the <see cref="T:System.Security.AccessControl.GenericAce" /> collection.</returns>
|
||||
// Token: 0x170008B8 RID: 2232
|
||||
// (get) Token: 0x06002CAC RID: 11436 RVA: 0x00092E54 File Offset: 0x00091054
|
||||
public GenericAce Current
|
||||
{
|
||||
get
|
||||
{
|
||||
return (this.current >= 0) ? this.owner[this.current] : null;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Advances the enumerator to the next element of the <see cref="T:System.Security.AccessControl.GenericAce" /> collection.</summary>
|
||||
/// <returns>true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection.</returns>
|
||||
/// <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
|
||||
// Token: 0x06002CAD RID: 11437 RVA: 0x00092E7C File Offset: 0x0009107C
|
||||
public bool MoveNext()
|
||||
{
|
||||
if (this.current + 1 == this.owner.Count)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
this.current++;
|
||||
return true;
|
||||
}
|
||||
|
||||
/// <summary>Sets the enumerator to its initial position, which is before the first element in the <see cref="T:System.Security.AccessControl.GenericAce" /> collection.</summary>
|
||||
/// <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
|
||||
// Token: 0x06002CAE RID: 11438 RVA: 0x00092EA8 File Offset: 0x000910A8
|
||||
public void Reset()
|
||||
{
|
||||
this.current = -1;
|
||||
}
|
||||
|
||||
// Token: 0x0400116D RID: 4461
|
||||
private GenericAcl owner;
|
||||
|
||||
// Token: 0x0400116E RID: 4462
|
||||
private int current = -1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the inheritance and auditing behavior of an access control entry (ACE).</summary>
|
||||
// Token: 0x020004A7 RID: 1191
|
||||
[Flags]
|
||||
public enum AceFlags : byte
|
||||
{
|
||||
/// <summary>No ACE flags are set.</summary>
|
||||
// Token: 0x04001170 RID: 4464
|
||||
None = 0,
|
||||
/// <summary>The access mask is propagated onto child leaf objects.</summary>
|
||||
// Token: 0x04001171 RID: 4465
|
||||
ObjectInherit = 1,
|
||||
/// <summary>The access mask is propagated to child container objects.</summary>
|
||||
// Token: 0x04001172 RID: 4466
|
||||
ContainerInherit = 2,
|
||||
/// <summary>The access checks do not apply to the object; they only apply to its children.</summary>
|
||||
// Token: 0x04001173 RID: 4467
|
||||
NoPropagateInherit = 4,
|
||||
/// <summary>The access mask is propagated only to child objects. This includes both container and leaf child objects.</summary>
|
||||
// Token: 0x04001174 RID: 4468
|
||||
InheritOnly = 8,
|
||||
/// <summary>A logical OR of <see cref="F:System.Security.AccessControl.AceFlags.ObjectInherit" />, <see cref="F:System.Security.AccessControl.AceFlags.ContainerInherit" />, <see cref="F:System.Security.AccessControl.AceFlags.NoPropagateInherit" />, and <see cref="F:System.Security.AccessControl.AceFlags.InheritOnly" />.</summary>
|
||||
// Token: 0x04001175 RID: 4469
|
||||
InheritanceFlags = 15,
|
||||
/// <summary>An ACE is inherited from a parent container rather than being explicitly set for an object.</summary>
|
||||
// Token: 0x04001176 RID: 4470
|
||||
Inherited = 16,
|
||||
/// <summary>Successful access attempts are audited.</summary>
|
||||
// Token: 0x04001177 RID: 4471
|
||||
SuccessfulAccess = 64,
|
||||
/// <summary>Failed access attempts are audited.</summary>
|
||||
// Token: 0x04001178 RID: 4472
|
||||
FailedAccess = 128,
|
||||
/// <summary>All access attempts are audited.</summary>
|
||||
// Token: 0x04001179 RID: 4473
|
||||
AuditFlags = 192
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the function of an access control entry (ACE).</summary>
|
||||
// Token: 0x020004A8 RID: 1192
|
||||
public enum AceQualifier
|
||||
{
|
||||
/// <summary>Allow access.</summary>
|
||||
// Token: 0x0400117B RID: 4475
|
||||
AccessAllowed,
|
||||
/// <summary>Deny access.</summary>
|
||||
// Token: 0x0400117C RID: 4476
|
||||
AccessDenied,
|
||||
/// <summary>Cause a system audit.</summary>
|
||||
// Token: 0x0400117D RID: 4477
|
||||
SystemAudit,
|
||||
/// <summary>Cause a system alarm.</summary>
|
||||
// Token: 0x0400117E RID: 4478
|
||||
SystemAlarm
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Defines the available access control entry (ACE) types.</summary>
|
||||
// Token: 0x020004A9 RID: 1193
|
||||
public enum AceType
|
||||
{
|
||||
/// <summary>Allows access to an object for a specific trustee identified by an <see cref="T:System.Security.Principal.IdentityReference" /> object.</summary>
|
||||
// Token: 0x04001180 RID: 4480
|
||||
AccessAllowed,
|
||||
/// <summary>Denies access to an object for a specific trustee identified by an <see cref="T:System.Security.Principal.IdentityReference" /> object.</summary>
|
||||
// Token: 0x04001181 RID: 4481
|
||||
AccessDenied,
|
||||
/// <summary>Causes an audit message to be logged when a specified trustee attempts to gain access to an object. The trustee is identified by an <see cref="T:System.Security.Principal.IdentityReference" /> object.</summary>
|
||||
// Token: 0x04001182 RID: 4482
|
||||
SystemAudit,
|
||||
/// <summary>Reserved for future use.</summary>
|
||||
// Token: 0x04001183 RID: 4483
|
||||
SystemAlarm,
|
||||
/// <summary>Defined but never used. Included here for completeness.</summary>
|
||||
// Token: 0x04001184 RID: 4484
|
||||
AccessAllowedCompound,
|
||||
/// <summary>Allows access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an <see cref="T:System.Security.Principal.IdentityReference" /> object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects.</summary>
|
||||
// Token: 0x04001185 RID: 4485
|
||||
AccessAllowedObject,
|
||||
/// <summary>Denies access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an <see cref="T:System.Security.Principal.IdentityReference" /> object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects.</summary>
|
||||
// Token: 0x04001186 RID: 4486
|
||||
AccessDeniedObject,
|
||||
/// <summary>Causes an audit message to be logged when a specified trustee attempts to gain access to an object or subobjects such as property sets or properties. The ACE contains a set of access rights, a GUID that identifies the type of object or subobject, and an <see cref="T:System.Security.Principal.IdentityReference" /> object that identifies the trustee for whom the system will audit access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects.</summary>
|
||||
// Token: 0x04001187 RID: 4487
|
||||
SystemAuditObject,
|
||||
/// <summary>Reserved for future use.</summary>
|
||||
// Token: 0x04001188 RID: 4488
|
||||
SystemAlarmObject,
|
||||
/// <summary>Allows access to an object for a specific trustee identified by an <see cref="T:System.Security.Principal.IdentityReference" /> object. This ACE type may contain optional callback data. The callback data is a resource manager–specific BLOB that is not interpreted.</summary>
|
||||
// Token: 0x04001189 RID: 4489
|
||||
AccessAllowedCallback,
|
||||
/// <summary>Denies access to an object for a specific trustee identified by an <see cref="T:System.Security.Principal.IdentityReference" /> object. This ACE type can contain optional callback data. The callback data is a resource manager–specific BLOB that is not interpreted.</summary>
|
||||
// Token: 0x0400118A RID: 4490
|
||||
AccessDeniedCallback,
|
||||
/// <summary>Allows access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an <see cref="T:System.Security.Principal.IdentityReference" /> object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. This ACE type may contain optional callback data. The callback data is a resource manager–specific BLOB that is not interpreted.</summary>
|
||||
// Token: 0x0400118B RID: 4491
|
||||
AccessAllowedCallbackObject,
|
||||
/// <summary>Denies access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an <see cref="T:System.Security.Principal.IdentityReference" /> object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. This ACE type can contain optional callback data. The callback data is a resource manager–specific BLOB that is not interpreted.</summary>
|
||||
// Token: 0x0400118C RID: 4492
|
||||
AccessDeniedCallbackObject,
|
||||
/// <summary>Causes an audit message to be logged when a specified trustee attempts to gain access to an object. The trustee is identified by an <see cref="T:System.Security.Principal.IdentityReference" /> object. This ACE type can contain optional callback data. The callback data is a resource manager–specific BLOB that is not interpreted.</summary>
|
||||
// Token: 0x0400118D RID: 4493
|
||||
SystemAuditCallback,
|
||||
/// <summary>Reserved for future use.</summary>
|
||||
// Token: 0x0400118E RID: 4494
|
||||
SystemAlarmCallback,
|
||||
/// <summary>Causes an audit message to be logged when a specified trustee attempts to gain access to an object or subobjects such as property sets or properties. The ACE contains a set of access rights, a GUID that identifies the type of object or subobject, and an <see cref="T:System.Security.Principal.IdentityReference" /> object that identifies the trustee for whom the system will audit access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. This ACE type can contain optional callback data. The callback data is a resource manager–specific BLOB that is not interpreted.</summary>
|
||||
// Token: 0x0400118F RID: 4495
|
||||
SystemAuditCallbackObject,
|
||||
/// <summary>Reserved for future use.</summary>
|
||||
// Token: 0x04001190 RID: 4496
|
||||
SystemAlarmCallbackObject,
|
||||
/// <summary>Tracks the maximum defined ACE type in the enumeration.</summary>
|
||||
// Token: 0x04001191 RID: 4497
|
||||
MaxDefinedAceType = 16
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the conditions for auditing attempts to access a securable object.</summary>
|
||||
// Token: 0x020004AA RID: 1194
|
||||
[Flags]
|
||||
public enum AuditFlags
|
||||
{
|
||||
/// <summary>No access attempts are to be audited.</summary>
|
||||
// Token: 0x04001193 RID: 4499
|
||||
None = 0,
|
||||
/// <summary>Successful access attempts are to be audited.</summary>
|
||||
// Token: 0x04001194 RID: 4500
|
||||
Success = 1,
|
||||
/// <summary>Failed access attempts are to be audited.</summary>
|
||||
// Token: 0x04001195 RID: 4501
|
||||
Failure = 2
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a combination of a user's identity and an access mask. An <see cref="T:System.Security.AccessControl.AuditRule" /> object also contains information about how the rule is inherited by child objects, how that inheritance is propagated, and for what conditions it is audited.</summary>
|
||||
// Token: 0x020004AB RID: 1195
|
||||
public abstract class AuditRule : AuthorizationRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.AuditRule" /> class by using the specified values.</summary>
|
||||
/// <param name="identity">The identity to which the audit rule applies. It must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="accessMask">The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.</param>
|
||||
/// <param name="isInherited">true to inherit this rule from a parent container.</param>
|
||||
/// <param name="inheritanceFlags">The inheritance properties of the audit rule.</param>
|
||||
/// <param name="propagationFlags">Whether inherited audit rules are automatically propagated. The propagation flags are ignored if <paramref name="inheritanceFlags" /> is set to <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="auditFlags">The conditions for which the rule is audited.</param>
|
||||
/// <exception cref="T:System.ArgumentException">The value of the <paramref name="identity" /> parameter cannot be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />, or the <paramref name="auditFlags" /> parameter contains an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">The value of the <paramref name="accessMask" /> parameter is zero, or the <paramref name="inheritanceFlags" /> or <paramref name="propagationFlags" /> parameters contain unrecognized flag values.</exception>
|
||||
// Token: 0x06002CAF RID: 11439 RVA: 0x00092EB4 File Offset: 0x000910B4
|
||||
protected AuditRule(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags auditFlags)
|
||||
: base(identity, accessMask, isInherited, inheritanceFlags, propagationFlags)
|
||||
{
|
||||
if (!(identity is SecurityIdentifier))
|
||||
{
|
||||
throw new ArgumentException("identity");
|
||||
}
|
||||
if (accessMask == 0)
|
||||
{
|
||||
throw new ArgumentOutOfRangeException();
|
||||
}
|
||||
this.auditFlags = auditFlags;
|
||||
}
|
||||
|
||||
/// <summary>Gets the audit flags for this audit rule.</summary>
|
||||
/// <returns>A bitwise combination of the enumeration values. This combination specifies the audit conditions for this audit rule.</returns>
|
||||
// Token: 0x170008B9 RID: 2233
|
||||
// (get) Token: 0x06002CB0 RID: 11440 RVA: 0x00092EF0 File Offset: 0x000910F0
|
||||
public AuditFlags AuditFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.auditFlags;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x04001196 RID: 4502
|
||||
private AuditFlags auditFlags;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,116 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Determines access to securable objects. The derived classes <see cref="T:System.Security.AccessControl.AccessRule" /> and <see cref="T:System.Security.AccessControl.AuditRule" /> offer specializations for access and audit functionality.</summary>
|
||||
// Token: 0x020004AC RID: 1196
|
||||
public abstract class AuthorizationRule
|
||||
{
|
||||
// Token: 0x06002CB1 RID: 11441 RVA: 0x00092EF8 File Offset: 0x000910F8
|
||||
internal AuthorizationRule()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AuthorizationControl.AccessRule" /> class by using the specified values.</summary>
|
||||
/// <param name="identity">The identity to which the access rule applies. This parameter must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="accessMask">The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.</param>
|
||||
/// <param name="isInherited">true to inherit this rule from a parent container.</param>
|
||||
/// <param name="inheritanceFlags">The inheritance properties of the access rule.</param>
|
||||
/// <param name="propagationFlags">Whether inherited access rules are automatically propagated. The propagation flags are ignored if <paramref name="inheritanceFlags" /> is set to <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <exception cref="T:System.ArgumentException">The value of the <paramref name="identity" /> parameter cannot be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">The value of the <paramref name="accessMask" /> parameter is zero, or the <paramref name="inheritanceFlags" /> or <paramref name="propagationFlags" /> parameters contain unrecognized flag values.</exception>
|
||||
// Token: 0x06002CB2 RID: 11442 RVA: 0x00092F00 File Offset: 0x00091100
|
||||
protected internal AuthorizationRule(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
|
||||
{
|
||||
if (!(identity is SecurityIdentifier))
|
||||
{
|
||||
throw new ArgumentException("identity");
|
||||
}
|
||||
if (accessMask == 0)
|
||||
{
|
||||
throw new ArgumentOutOfRangeException();
|
||||
}
|
||||
this.identity = identity;
|
||||
this.accessMask = accessMask;
|
||||
this.isInherited = isInherited;
|
||||
this.inheritanceFlags = inheritanceFlags;
|
||||
this.propagationFlags = propagationFlags;
|
||||
}
|
||||
|
||||
/// <summary>Gets the <see cref="T:System.Security.Principal.IdentityReference" /> to which this rule applies.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.Principal.IdentityReference" /> to which this rule applies.</returns>
|
||||
// Token: 0x170008BA RID: 2234
|
||||
// (get) Token: 0x06002CB3 RID: 11443 RVA: 0x00092F5C File Offset: 0x0009115C
|
||||
public IdentityReference IdentityReference
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.identity;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the value of flags that determine how this rule is inherited by child objects.</summary>
|
||||
/// <returns>A bitwise combination of the enumeration values.</returns>
|
||||
// Token: 0x170008BB RID: 2235
|
||||
// (get) Token: 0x06002CB4 RID: 11444 RVA: 0x00092F64 File Offset: 0x00091164
|
||||
public InheritanceFlags InheritanceFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.inheritanceFlags;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a value indicating whether this rule is explicitly set or is inherited from a parent container object.</summary>
|
||||
/// <returns>true if this rule is not explicitly set but is instead inherited from a parent container.</returns>
|
||||
// Token: 0x170008BC RID: 2236
|
||||
// (get) Token: 0x06002CB5 RID: 11445 RVA: 0x00092F6C File Offset: 0x0009116C
|
||||
public bool IsInherited
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.isInherited;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the value of the propagation flags, which determine how inheritance of this rule is propagated to child objects. This property is significant only when the value of the <see cref="T:System.Security.AccessControl.InheritanceFlags" /> enumeration is not <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</summary>
|
||||
/// <returns>A bitwise combination of the enumeration values.</returns>
|
||||
// Token: 0x170008BD RID: 2237
|
||||
// (get) Token: 0x06002CB6 RID: 11446 RVA: 0x00092F74 File Offset: 0x00091174
|
||||
public PropagationFlags PropagationFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.propagationFlags;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the access mask for this rule.</summary>
|
||||
/// <returns>The access mask for this rule.</returns>
|
||||
// Token: 0x170008BE RID: 2238
|
||||
// (get) Token: 0x06002CB7 RID: 11447 RVA: 0x00092F7C File Offset: 0x0009117C
|
||||
protected internal int AccessMask
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.accessMask;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x04001197 RID: 4503
|
||||
private IdentityReference identity;
|
||||
|
||||
// Token: 0x04001198 RID: 4504
|
||||
private int accessMask;
|
||||
|
||||
// Token: 0x04001199 RID: 4505
|
||||
private bool isInherited;
|
||||
|
||||
// Token: 0x0400119A RID: 4506
|
||||
private InheritanceFlags inheritanceFlags;
|
||||
|
||||
// Token: 0x0400119B RID: 4507
|
||||
private PropagationFlags propagationFlags;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a collection of <see cref="T:System.Security.AccessControl.AuthorizationRule" /> objects.</summary>
|
||||
// Token: 0x020004AD RID: 1197
|
||||
public sealed class AuthorizationRuleCollection : ReadOnlyCollectionBase
|
||||
{
|
||||
// Token: 0x06002CB8 RID: 11448 RVA: 0x00092F84 File Offset: 0x00091184
|
||||
private AuthorizationRuleCollection(AuthorizationRule[] rules)
|
||||
{
|
||||
base.InnerList.AddRange(rules);
|
||||
}
|
||||
|
||||
/// <summary>Gets the <see cref="T:System.Security.AccessControl.AuthorizationRule" /> object at the specified index of the collection.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.AuthorizationRule" /> object at the specified index.</returns>
|
||||
/// <param name="index">The zero-based index of the <see cref="T:System.Security.AccessControl.AuthorizationRule" /> object to get.</param>
|
||||
// Token: 0x170008BF RID: 2239
|
||||
public AuthorizationRule this[int index]
|
||||
{
|
||||
get
|
||||
{
|
||||
return (AuthorizationRule)base.InnerList[index];
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Copies the contents of the collection to an array.</summary>
|
||||
/// <param name="rules">An array to which to copy the contents of the collection.</param>
|
||||
/// <param name="index">The zero-based index from which to begin copying.</param>
|
||||
// Token: 0x06002CBA RID: 11450 RVA: 0x00092FAC File Offset: 0x000911AC
|
||||
public void CopyTo(AuthorizationRule[] rules, int index)
|
||||
{
|
||||
base.InnerList.CopyTo(rules, index);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents an access control entry (ACE).</summary>
|
||||
// Token: 0x020004AE RID: 1198
|
||||
public sealed class CommonAce : QualifiedAce
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CommonAce" /> class.</summary>
|
||||
/// <param name="flags">Flags that specify information about the inheritance, inheritance propagation, and auditing conditions for the new access control entry (ACE).</param>
|
||||
/// <param name="qualifier">The use of the new ACE.</param>
|
||||
/// <param name="accessMask">The access mask for the ACE.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> associated with the new ACE.</param>
|
||||
/// <param name="isCallback">true to specify that the new ACE is a callback type ACE.</param>
|
||||
/// <param name="opaque">Opaque data associated with the new ACE. Opaque data is allowed only for callback ACE types. The length of this array must not be greater than the return value of the <see cref="M:System.Security.AccessControl.CommonAce.MaxOpaqueLength(System.Boolean)" /> method.</param>
|
||||
// Token: 0x06002CBB RID: 11451 RVA: 0x00092FBC File Offset: 0x000911BC
|
||||
public CommonAce(AceFlags flags, AceQualifier qualifier, int accessMask, SecurityIdentifier sid, bool isCallback, byte[] opaque)
|
||||
: base(InheritanceFlags.None, PropagationFlags.None, qualifier, isCallback, opaque)
|
||||
{
|
||||
base.AccessMask = accessMask;
|
||||
base.SecurityIdentifier = sid;
|
||||
}
|
||||
|
||||
/// <summary>Gets the length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.CommonAce" /> object. Use this length with the <see cref="M:System.Security.AccessControl.CommonAce.GetBinaryForm(System.Byte[],System.Int32)" /> method before marshaling the ACL into a binary array.</summary>
|
||||
/// <returns>The length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.CommonAce" /> object.</returns>
|
||||
// Token: 0x170008C0 RID: 2240
|
||||
// (get) Token: 0x06002CBC RID: 11452 RVA: 0x00092FDC File Offset: 0x000911DC
|
||||
[MonoTODO]
|
||||
public override int BinaryLength
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Marshals the contents of the <see cref="T:System.Security.AccessControl.CommonAce" /> object into the specified byte array beginning at the specified offset.</summary>
|
||||
/// <param name="binaryForm">The byte array into which the contents of the <see cref="T:System.Security.AccessControl.CommonAce" /> object is marshaled.</param>
|
||||
/// <param name="offset">The offset at which to start marshaling.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="offset" /> is negative or too high to allow the entire <see cref="T:System.Security.AccessControl.CommonAce" /> to be copied into the <paramref name="binaryForm" /> array.</exception>
|
||||
// Token: 0x06002CBD RID: 11453 RVA: 0x00092FE4 File Offset: 0x000911E4
|
||||
[MonoTODO]
|
||||
public override void GetBinaryForm(byte[] binaryForm, int offset)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Gets the maximum allowed length of an opaque data BLOB for callback access control entries (ACEs).</summary>
|
||||
/// <returns>The allowed length of an opaque data BLOB.</returns>
|
||||
/// <param name="isCallback">true to specify that the <see cref="T:System.Security.AccessControl.CommonAce" /> object is a callback ACE type.</param>
|
||||
// Token: 0x06002CBE RID: 11454 RVA: 0x00092FEC File Offset: 0x000911EC
|
||||
[MonoTODO]
|
||||
public static int MaxOpaqueLength(bool isCallback)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,158 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents an access control list (ACL) and is the base class for the <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> and <see cref="T:System.Security.AccessControl.SystemAcl" /> classes.</summary>
|
||||
// Token: 0x020004AF RID: 1199
|
||||
public abstract class CommonAcl : GenericAcl
|
||||
{
|
||||
// Token: 0x06002CBF RID: 11455 RVA: 0x00092FF4 File Offset: 0x000911F4
|
||||
internal CommonAcl(bool isContainer, bool isDS, byte revision)
|
||||
: this(isContainer, isDS, revision, 10)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06002CC0 RID: 11456 RVA: 0x00093004 File Offset: 0x00091204
|
||||
internal CommonAcl(bool isContainer, bool isDS, byte revision, int capacity)
|
||||
{
|
||||
this.is_container = isContainer;
|
||||
this.is_ds = isDS;
|
||||
this.revision = revision;
|
||||
this.list = new List<GenericAce>(capacity);
|
||||
}
|
||||
|
||||
/// <summary>Gets the length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.CommonAcl" /> object. This length should be used before marshaling the access control list (ACL) into a binary array by using the <see cref="M:System.Security.AccessControl.CommonAcl.GetBinaryForm" /> method.</summary>
|
||||
/// <returns>The length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.CommonAcl" /> object.</returns>
|
||||
// Token: 0x170008C1 RID: 2241
|
||||
// (get) Token: 0x06002CC1 RID: 11457 RVA: 0x0009303C File Offset: 0x0009123C
|
||||
[MonoTODO]
|
||||
public sealed override int BinaryLength
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the number of access control entries (ACEs) in the current <see cref="T:System.Security.AccessControl.CommonAcl" /> object.</summary>
|
||||
/// <returns>The number of ACEs in the current <see cref="T:System.Security.AccessControl.CommonAcl" /> object.</returns>
|
||||
// Token: 0x170008C2 RID: 2242
|
||||
// (get) Token: 0x06002CC2 RID: 11458 RVA: 0x00093044 File Offset: 0x00091244
|
||||
public sealed override int Count
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.list.Count;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether the access control entries (ACEs) in the current <see cref="T:System.Security.AccessControl.CommonAcl" /> object are in canonical order.</summary>
|
||||
/// <returns>true if the ACEs in the current <see cref="T:System.Security.AccessControl.CommonAcl" /> object are in canonical order; otherwise, false.</returns>
|
||||
// Token: 0x170008C3 RID: 2243
|
||||
// (get) Token: 0x06002CC3 RID: 11459 RVA: 0x00093054 File Offset: 0x00091254
|
||||
[MonoTODO]
|
||||
public bool IsCanonical
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Sets whether the <see cref="T:System.Security.AccessControl.CommonAcl" /> object is a container. </summary>
|
||||
/// <returns>true if the current <see cref="T:System.Security.AccessControl.CommonAcl" /> object is a container.</returns>
|
||||
// Token: 0x170008C4 RID: 2244
|
||||
// (get) Token: 0x06002CC4 RID: 11460 RVA: 0x0009305C File Offset: 0x0009125C
|
||||
public bool IsContainer
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.is_container;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Sets whether the current <see cref="T:System.Security.AccessControl.CommonAcl" /> object is a directory object access control list (ACL).</summary>
|
||||
/// <returns>true if the current <see cref="T:System.Security.AccessControl.CommonAcl" /> object is a directory object ACL.</returns>
|
||||
// Token: 0x170008C5 RID: 2245
|
||||
// (get) Token: 0x06002CC5 RID: 11461 RVA: 0x00093064 File Offset: 0x00091264
|
||||
public bool IsDS
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.is_ds;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the <see cref="T:System.Security.AccessControl.CommonAce" /> at the specified index.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.CommonAce" /> at the specified index.</returns>
|
||||
/// <param name="index">The zero-based index of the <see cref="T:System.Security.AccessControl.CommonAce" /> to get or set.</param>
|
||||
// Token: 0x170008C6 RID: 2246
|
||||
public sealed override GenericAce this[int index]
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.list[index];
|
||||
}
|
||||
set
|
||||
{
|
||||
this.list[index] = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the revision level of the <see cref="T:System.Security.AccessControl.CommonAcl" />.</summary>
|
||||
/// <returns>A byte value that specifies the revision level of the <see cref="T:System.Security.AccessControl.CommonAcl" />.</returns>
|
||||
// Token: 0x170008C7 RID: 2247
|
||||
// (get) Token: 0x06002CC8 RID: 11464 RVA: 0x0009308C File Offset: 0x0009128C
|
||||
public sealed override byte Revision
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.revision;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Marshals the contents of the <see cref="T:System.Security.AccessControl.CommonAcl" /> object into the specified byte array beginning at the specified offset.</summary>
|
||||
/// <param name="binaryForm">The byte array into which the contents of the <see cref="T:System.Security.AccessControl.CommonAcl" /> is marshaled.</param>
|
||||
/// <param name="offset">The offset at which to start marshaling.</param>
|
||||
// Token: 0x06002CC9 RID: 11465 RVA: 0x00093094 File Offset: 0x00091294
|
||||
[MonoTODO]
|
||||
public sealed override void GetBinaryForm(byte[] binaryForm, int offset)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access control entries (ACEs) contained by this <see cref="T:System.Security.AccessControl.CommonAcl" /> object that are associated with the specified <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</summary>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> object to check for.</param>
|
||||
// Token: 0x06002CCA RID: 11466 RVA: 0x0009309C File Offset: 0x0009129C
|
||||
[MonoTODO]
|
||||
public void Purge(SecurityIdentifier sid)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all inherited access control entries (ACEs) from this <see cref="T:System.Security.AccessControl.CommonAcl" /> object.</summary>
|
||||
// Token: 0x06002CCB RID: 11467 RVA: 0x000930A4 File Offset: 0x000912A4
|
||||
[MonoTODO]
|
||||
public void RemoveInheritedAces()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
// Token: 0x0400119C RID: 4508
|
||||
private const int default_capacity = 10;
|
||||
|
||||
// Token: 0x0400119D RID: 4509
|
||||
private bool is_container;
|
||||
|
||||
// Token: 0x0400119E RID: 4510
|
||||
private bool is_ds;
|
||||
|
||||
// Token: 0x0400119F RID: 4511
|
||||
private byte revision;
|
||||
|
||||
// Token: 0x040011A0 RID: 4512
|
||||
private List<GenericAce> list;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,225 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Controls access to objects without direct manipulation of access control lists (ACLs). This class is the abstract base class for the <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> class.</summary>
|
||||
// Token: 0x020004B0 RID: 1200
|
||||
[MonoTODO("required for NativeObjectSecurity - implementation is missing")]
|
||||
public abstract class CommonObjectSecurity : ObjectSecurity
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> class.</summary>
|
||||
/// <param name="isContainer">true if the new object is a container object.</param>
|
||||
// Token: 0x06002CCC RID: 11468 RVA: 0x000930AC File Offset: 0x000912AC
|
||||
protected CommonObjectSecurity(bool isContainer)
|
||||
: base(isContainer, false)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets a collection of the access rules associated with the specified security identifier.</summary>
|
||||
/// <returns>The collection of access rules associated with the specified <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</returns>
|
||||
/// <param name="includeExplicit">true to include access rules explicitly set for the object.</param>
|
||||
/// <param name="includeInherited">true to include inherited access rules.</param>
|
||||
/// <param name="targetType">Specifies whether the security identifier for which to retrieve access rules is of type T:System.Security.Principal.SecurityIdentifier or type T:System.Security.Principal.NTAccount. The value of this parameter must be a type that can be translated to the <see cref="T:System.Security.Principal.SecurityIdentifier" /> type.</param>
|
||||
/// <PermissionSet>
|
||||
/// <IPermission class="System.Security.Permissions.ReflectionPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="MemberAccess" />
|
||||
/// </PermissionSet>
|
||||
// Token: 0x06002CCD RID: 11469 RVA: 0x000930CC File Offset: 0x000912CC
|
||||
public AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Gets a collection of the audit rules associated with the specified security identifier.</summary>
|
||||
/// <returns>The collection of audit rules associated with the specified <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</returns>
|
||||
/// <param name="includeExplicit">true to include audit rules explicitly set for the object.</param>
|
||||
/// <param name="includeInherited">true to include inherited audit rules.</param>
|
||||
/// <param name="targetType">The security identifier for which to retrieve audit rules. This must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</param>
|
||||
/// <PermissionSet>
|
||||
/// <IPermission class="System.Security.Permissions.ReflectionPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="MemberAccess" />
|
||||
/// </PermissionSet>
|
||||
// Token: 0x06002CCE RID: 11470 RVA: 0x000930D4 File Offset: 0x000912D4
|
||||
public AuthorizationRuleCollection GetAuditRules(bool includeExplicit, bool includeInherited, Type targetType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Adds the specified access rule to the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The access rule to add.</param>
|
||||
// Token: 0x06002CCF RID: 11471 RVA: 0x000930DC File Offset: 0x000912DC
|
||||
protected void AddAccessRule(AccessRule rule)
|
||||
{
|
||||
this.access_rules.Add(rule);
|
||||
base.AccessRulesModified = true;
|
||||
}
|
||||
|
||||
/// <summary>Removes access rules that contain the same security identifier and access mask as the specified access rule from the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the access rule was successfully removed; otherwise, false.</returns>
|
||||
/// <param name="rule">The access rule to remove.</param>
|
||||
// Token: 0x06002CD0 RID: 11472 RVA: 0x000930F4 File Offset: 0x000912F4
|
||||
protected bool RemoveAccessRule(AccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules that have the same security identifier as the specified access rule from the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The access rule to remove.</param>
|
||||
// Token: 0x06002CD1 RID: 11473 RVA: 0x000930FC File Offset: 0x000912FC
|
||||
protected void RemoveAccessRuleAll(AccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules that exactly match the specified access rule from the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The access rule to remove.</param>
|
||||
// Token: 0x06002CD2 RID: 11474 RVA: 0x00093104 File Offset: 0x00091304
|
||||
protected void RemoveAccessRuleSpecific(AccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules in the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object and then adds the specified access rule.</summary>
|
||||
/// <param name="rule">The access rule to reset.</param>
|
||||
// Token: 0x06002CD3 RID: 11475 RVA: 0x0009310C File Offset: 0x0009130C
|
||||
protected void ResetAccessRule(AccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules that contain the same security identifier and qualifier as the specified access rule in the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object and then adds the specified access rule.</summary>
|
||||
/// <param name="rule">The access rule to set.</param>
|
||||
// Token: 0x06002CD4 RID: 11476 RVA: 0x00093114 File Offset: 0x00091314
|
||||
protected void SetAccessRule(AccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Applies the specified modification to the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the DACL is successfully modified; otherwise, false.</returns>
|
||||
/// <param name="modification">The modification to apply to the DACL.</param>
|
||||
/// <param name="rule">The access rule to modify.</param>
|
||||
/// <param name="modified">true if the DACL is successfully modified; otherwise, false.</param>
|
||||
// Token: 0x06002CD5 RID: 11477 RVA: 0x0009311C File Offset: 0x0009131C
|
||||
protected override bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified)
|
||||
{
|
||||
foreach (AccessRule accessRule in this.access_rules)
|
||||
{
|
||||
if (rule == accessRule)
|
||||
{
|
||||
switch (modification)
|
||||
{
|
||||
case AccessControlModification.Add:
|
||||
this.AddAccessRule(rule);
|
||||
break;
|
||||
case AccessControlModification.Set:
|
||||
this.SetAccessRule(rule);
|
||||
break;
|
||||
case AccessControlModification.Reset:
|
||||
this.ResetAccessRule(rule);
|
||||
break;
|
||||
case AccessControlModification.Remove:
|
||||
this.RemoveAccessRule(rule);
|
||||
break;
|
||||
case AccessControlModification.RemoveAll:
|
||||
this.RemoveAccessRuleAll(rule);
|
||||
break;
|
||||
case AccessControlModification.RemoveSpecific:
|
||||
this.RemoveAccessRuleSpecific(rule);
|
||||
break;
|
||||
}
|
||||
modified = true;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
modified = false;
|
||||
return false;
|
||||
}
|
||||
|
||||
/// <summary>Adds the specified audit rule to the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The audit rule to add.</param>
|
||||
// Token: 0x06002CD6 RID: 11478 RVA: 0x00093208 File Offset: 0x00091408
|
||||
protected void AddAuditRule(AuditRule rule)
|
||||
{
|
||||
this.audit_rules.Add(rule);
|
||||
base.AuditRulesModified = true;
|
||||
}
|
||||
|
||||
/// <summary>Removes audit rules that contain the same security identifier and access mask as the specified audit rule from the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the audit rule was successfully removed; otherwise, false.</returns>
|
||||
/// <param name="rule">The audit rule to remove.</param>
|
||||
// Token: 0x06002CD7 RID: 11479 RVA: 0x00093220 File Offset: 0x00091420
|
||||
protected bool RemoveAuditRule(AuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules that have the same security identifier as the specified audit rule from the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The audit rule to remove.</param>
|
||||
// Token: 0x06002CD8 RID: 11480 RVA: 0x00093228 File Offset: 0x00091428
|
||||
protected void RemoveAuditRuleAll(AuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules that exactly match the specified audit rule from the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The audit rule to remove.</param>
|
||||
// Token: 0x06002CD9 RID: 11481 RVA: 0x00093230 File Offset: 0x00091430
|
||||
protected void RemoveAuditRuleSpecific(AuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules that contain the same security identifier and qualifier as the specified audit rule in the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object and then adds the specified audit rule.</summary>
|
||||
/// <param name="rule">The audit rule to set.</param>
|
||||
// Token: 0x06002CDA RID: 11482 RVA: 0x00093238 File Offset: 0x00091438
|
||||
protected void SetAuditRule(AuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Applies the specified modification to the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the SACL is successfully modified; otherwise, false.</returns>
|
||||
/// <param name="modification">The modification to apply to the SACL.</param>
|
||||
/// <param name="rule">The audit rule to modify.</param>
|
||||
/// <param name="modified">true if the SACL is successfully modified; otherwise, false.</param>
|
||||
// Token: 0x06002CDB RID: 11483 RVA: 0x00093240 File Offset: 0x00091440
|
||||
protected override bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified)
|
||||
{
|
||||
foreach (AuditRule auditRule in this.audit_rules)
|
||||
{
|
||||
if (rule == auditRule)
|
||||
{
|
||||
switch (modification)
|
||||
{
|
||||
case AccessControlModification.Add:
|
||||
this.AddAuditRule(rule);
|
||||
break;
|
||||
case AccessControlModification.Set:
|
||||
this.SetAuditRule(rule);
|
||||
break;
|
||||
case AccessControlModification.Remove:
|
||||
this.RemoveAuditRule(rule);
|
||||
break;
|
||||
case AccessControlModification.RemoveAll:
|
||||
this.RemoveAuditRuleAll(rule);
|
||||
break;
|
||||
case AccessControlModification.RemoveSpecific:
|
||||
this.RemoveAuditRuleSpecific(rule);
|
||||
break;
|
||||
}
|
||||
base.AuditRulesModified = true;
|
||||
modified = true;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
modified = false;
|
||||
return false;
|
||||
}
|
||||
|
||||
// Token: 0x040011A1 RID: 4513
|
||||
private List<AccessRule> access_rules = new List<AccessRule>();
|
||||
|
||||
// Token: 0x040011A2 RID: 4514
|
||||
private List<AuditRule> audit_rules = new List<AuditRule>();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,248 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a security descriptor. A security descriptor includes an owner, a primary group, a Discretionary Access Control List (DACL), and a System Access Control List (SACL).</summary>
|
||||
// Token: 0x020004B1 RID: 1201
|
||||
public sealed class CommonSecurityDescriptor : GenericSecurityDescriptor
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> class from the specified <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</summary>
|
||||
/// <param name="isContainer">true if the new security descriptor is associated with a container object.</param>
|
||||
/// <param name="isDS">true if the new security descriptor is associated with a directory object.</param>
|
||||
/// <param name="rawSecurityDescriptor">The <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object from which to create the new <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</param>
|
||||
// Token: 0x06002CDC RID: 11484 RVA: 0x00093324 File Offset: 0x00091524
|
||||
public CommonSecurityDescriptor(bool isContainer, bool isDS, RawSecurityDescriptor rawSecurityDescriptor)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> class from the specified Security Descriptor Definition Language (SDDL) string.</summary>
|
||||
/// <param name="isContainer">true if the new security descriptor is associated with a container object.</param>
|
||||
/// <param name="isDS">true if the new security descriptor is associated with a directory object.</param>
|
||||
/// <param name="sddlForm">The SDDL string from which to create the new <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</param>
|
||||
// Token: 0x06002CDD RID: 11485 RVA: 0x00093334 File Offset: 0x00091534
|
||||
public CommonSecurityDescriptor(bool isContainer, bool isDS, string sddlForm)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> class from the specified array of byte values.</summary>
|
||||
/// <param name="isContainer">true if the new security descriptor is associated with a container object.</param>
|
||||
/// <param name="isDS">true if the new security descriptor is associated with a directory object.</param>
|
||||
/// <param name="binaryForm">The array of byte values from which to create the new <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</param>
|
||||
/// <param name="offset">The offset in the <paramref name="binaryForm" /> array at which to begin copying.</param>
|
||||
// Token: 0x06002CDE RID: 11486 RVA: 0x00093344 File Offset: 0x00091544
|
||||
public CommonSecurityDescriptor(bool isContainer, bool isDS, byte[] binaryForm, int offset)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> class from the specified information.</summary>
|
||||
/// <param name="isContainer">true if the new security descriptor is associated with a container object.</param>
|
||||
/// <param name="isDS">true if the new security descriptor is associated with a directory object.</param>
|
||||
/// <param name="flags">Flags that specify behavior of the new <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</param>
|
||||
/// <param name="owner">The owner for the new <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</param>
|
||||
/// <param name="group">The primary group for the new <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</param>
|
||||
/// <param name="systemAcl">The System Access Control List (SACL) for the new <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</param>
|
||||
/// <param name="discretionaryAcl">The Discretionary Access Control List (DACL) for the new <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</param>
|
||||
// Token: 0x06002CDF RID: 11487 RVA: 0x00093354 File Offset: 0x00091554
|
||||
public CommonSecurityDescriptor(bool isContainer, bool isDS, ControlFlags flags, SecurityIdentifier owner, SecurityIdentifier group, SystemAcl systemAcl, DiscretionaryAcl discretionaryAcl)
|
||||
{
|
||||
this.isContainer = isContainer;
|
||||
this.isDS = isDS;
|
||||
this.flags = flags;
|
||||
this.owner = owner;
|
||||
this.group = group;
|
||||
this.systemAcl = systemAcl;
|
||||
this.discretionaryAcl = discretionaryAcl;
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Gets values that specify behavior of the <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</summary>
|
||||
/// <returns>One or more values of the <see cref="T:System.Security.AccessControl.ControlFlags" /> enumeration combined with a logical OR operation.</returns>
|
||||
// Token: 0x170008C8 RID: 2248
|
||||
// (get) Token: 0x06002CE0 RID: 11488 RVA: 0x000933A4 File Offset: 0x000915A4
|
||||
public override ControlFlags ControlFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.flags;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the discretionary access control list (DACL) for this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object. The DACL contains access rules.</summary>
|
||||
/// <returns>The DACL for this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x170008C9 RID: 2249
|
||||
// (get) Token: 0x06002CE1 RID: 11489 RVA: 0x000933AC File Offset: 0x000915AC
|
||||
// (set) Token: 0x06002CE2 RID: 11490 RVA: 0x000933B4 File Offset: 0x000915B4
|
||||
public DiscretionaryAcl DiscretionaryAcl
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.discretionaryAcl;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (value == null)
|
||||
{
|
||||
}
|
||||
this.discretionaryAcl = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the primary group for this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</summary>
|
||||
/// <returns>The primary group for this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x170008CA RID: 2250
|
||||
// (get) Token: 0x06002CE3 RID: 11491 RVA: 0x000933C4 File Offset: 0x000915C4
|
||||
// (set) Token: 0x06002CE4 RID: 11492 RVA: 0x000933CC File Offset: 0x000915CC
|
||||
public override SecurityIdentifier Group
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.group;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.group = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether the object associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object is a container object.</summary>
|
||||
/// <returns>true if the object associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object is a container object; otherwise, false.</returns>
|
||||
// Token: 0x170008CB RID: 2251
|
||||
// (get) Token: 0x06002CE5 RID: 11493 RVA: 0x000933D8 File Offset: 0x000915D8
|
||||
public bool IsContainer
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.isContainer;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object is in canonical order.</summary>
|
||||
/// <returns>true if the DACL associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object is in canonical order; otherwise, false.</returns>
|
||||
// Token: 0x170008CC RID: 2252
|
||||
// (get) Token: 0x06002CE6 RID: 11494 RVA: 0x000933E0 File Offset: 0x000915E0
|
||||
public bool IsDiscretionaryAclCanonical
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether the object associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object is a directory object.</summary>
|
||||
/// <returns>true if the object associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object is a directory object; otherwise, false.</returns>
|
||||
// Token: 0x170008CD RID: 2253
|
||||
// (get) Token: 0x06002CE7 RID: 11495 RVA: 0x000933E8 File Offset: 0x000915E8
|
||||
public bool IsDS
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.isDS;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object is in canonical order.</summary>
|
||||
/// <returns>true if the SACL associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object is in canonical order; otherwise, false.</returns>
|
||||
// Token: 0x170008CE RID: 2254
|
||||
// (get) Token: 0x06002CE8 RID: 11496 RVA: 0x000933F0 File Offset: 0x000915F0
|
||||
public bool IsSystemAclCanonical
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the owner of the object associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</summary>
|
||||
/// <returns>The owner of the object associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x170008CF RID: 2255
|
||||
// (get) Token: 0x06002CE9 RID: 11497 RVA: 0x000933F8 File Offset: 0x000915F8
|
||||
// (set) Token: 0x06002CEA RID: 11498 RVA: 0x00093400 File Offset: 0x00091600
|
||||
public override SecurityIdentifier Owner
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.owner;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.owner = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the System Access Control List (SACL) for this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object. The SACL contains audit rules.</summary>
|
||||
/// <returns>The SACL for this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x170008D0 RID: 2256
|
||||
// (get) Token: 0x06002CEB RID: 11499 RVA: 0x0009340C File Offset: 0x0009160C
|
||||
// (set) Token: 0x06002CEC RID: 11500 RVA: 0x00093414 File Offset: 0x00091614
|
||||
public SystemAcl SystemAcl
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.systemAcl;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.systemAcl = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules for the specified security identifier from the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</summary>
|
||||
/// <param name="sid">The security identifier for which to remove access rules.</param>
|
||||
// Token: 0x06002CED RID: 11501 RVA: 0x00093420 File Offset: 0x00091620
|
||||
public void PurgeAccessControl(SecurityIdentifier sid)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules for the specified security identifier from the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object.</summary>
|
||||
/// <param name="sid">The security identifier for which to remove audit rules.</param>
|
||||
// Token: 0x06002CEE RID: 11502 RVA: 0x00093428 File Offset: 0x00091628
|
||||
public void PurgeAudit(SecurityIdentifier sid)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the inheritance protection for the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object. DACLs that are protected do not inherit access rules from parent containers.</summary>
|
||||
/// <param name="isProtected">true to protect the DACL from inheritance.</param>
|
||||
/// <param name="preserveInheritance">true to keep inherited access rules in the DACL; false to remove inherited access rules from the DACL.</param>
|
||||
// Token: 0x06002CEF RID: 11503 RVA: 0x00093430 File Offset: 0x00091630
|
||||
public void SetDiscretionaryAclProtection(bool isProtected, bool preserveInheritance)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the inheritance protection for the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CommonSecurityDescriptor" /> object. SACLs that are protected do not inherit audit rules from parent containers.</summary>
|
||||
/// <param name="isProtected">true to protect the SACL from inheritance.</param>
|
||||
/// <param name="preserveInheritance">true to keep inherited audit rules in the SACL; false to remove inherited audit rules from the SACL.</param>
|
||||
// Token: 0x06002CF0 RID: 11504 RVA: 0x00093438 File Offset: 0x00091638
|
||||
public void SetSystemAclProtection(bool isProtected, bool preserveInheritance)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
// Token: 0x040011A3 RID: 4515
|
||||
private bool isContainer;
|
||||
|
||||
// Token: 0x040011A4 RID: 4516
|
||||
private bool isDS;
|
||||
|
||||
// Token: 0x040011A5 RID: 4517
|
||||
private ControlFlags flags;
|
||||
|
||||
// Token: 0x040011A6 RID: 4518
|
||||
private SecurityIdentifier owner;
|
||||
|
||||
// Token: 0x040011A7 RID: 4519
|
||||
private SecurityIdentifier group;
|
||||
|
||||
// Token: 0x040011A8 RID: 4520
|
||||
private SystemAcl systemAcl;
|
||||
|
||||
// Token: 0x040011A9 RID: 4521
|
||||
private DiscretionaryAcl discretionaryAcl;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a compound Access Control Entry (ACE).</summary>
|
||||
// Token: 0x020004B2 RID: 1202
|
||||
public sealed class CompoundAce : KnownAce
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CompoundAce" /> class.</summary>
|
||||
/// <param name="flags">Contains flags that specify information about the inheritance, inheritance propagation, and auditing conditions for the new Access Control Entry (ACE).</param>
|
||||
/// <param name="accessMask">The access mask for the ACE.</param>
|
||||
/// <param name="compoundAceType">A value from the <see cref="T:System.Security.AccessControl.CompoundAceType" /> enumeration.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> associated with the new ACE.</param>
|
||||
// Token: 0x06002CF1 RID: 11505 RVA: 0x00093440 File Offset: 0x00091640
|
||||
public CompoundAce(AceFlags flags, int accessMask, CompoundAceType compoundAceType, SecurityIdentifier sid)
|
||||
: base(InheritanceFlags.None, PropagationFlags.None)
|
||||
{
|
||||
this.compound_ace_type = compoundAceType;
|
||||
base.AceFlags = flags;
|
||||
base.AccessMask = accessMask;
|
||||
base.SecurityIdentifier = sid;
|
||||
}
|
||||
|
||||
/// <summary>Gets the length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.CompoundAce" /> object. This length should be used before marshaling the ACL into a binary array with the <see cref="M:System.Security.AccessControl. CompoundAce.GetBinaryForm" /> method.</summary>
|
||||
/// <returns>The length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl. CompoundAce" /> object.</returns>
|
||||
// Token: 0x170008D1 RID: 2257
|
||||
// (get) Token: 0x06002CF2 RID: 11506 RVA: 0x00093474 File Offset: 0x00091674
|
||||
[MonoTODO]
|
||||
public override int BinaryLength
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the type of this <see cref="T:System.Security.AccessControl. CompoundAce" /> object.</summary>
|
||||
/// <returns>The type of this <see cref="T:System.Security.AccessControl. CompoundAce" /> object.</returns>
|
||||
// Token: 0x170008D2 RID: 2258
|
||||
// (get) Token: 0x06002CF3 RID: 11507 RVA: 0x0009347C File Offset: 0x0009167C
|
||||
// (set) Token: 0x06002CF4 RID: 11508 RVA: 0x00093484 File Offset: 0x00091684
|
||||
public CompoundAceType CompoundAceType
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.compound_ace_type;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.compound_ace_type = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Marshals the contents of the <see cref="T:System.Security.AccessControl.CompoundAce" /> object into the specified byte array beginning at the specified offset.</summary>
|
||||
/// <param name="binaryForm">The byte array into which the contents of the <see cref="T:System.Security.AccessControl. CompoundAce" /> is marshaled.</param>
|
||||
/// <param name="offset">The offset at which to start marshaling.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="offset" /> is negative or too high to allow the entire <see cref="T:System.Security.AccessControl. CompoundAce" /> to be copied into <paramref name="array" />.</exception>
|
||||
// Token: 0x06002CF5 RID: 11509 RVA: 0x00093490 File Offset: 0x00091690
|
||||
[MonoTODO]
|
||||
public override void GetBinaryForm(byte[] binaryForm, int offset)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
// Token: 0x040011AA RID: 4522
|
||||
private CompoundAceType compound_ace_type;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the type of a <see cref="T:System.Security.AccessControl.CompoundAce" /> object.</summary>
|
||||
// Token: 0x020004B3 RID: 1203
|
||||
public enum CompoundAceType
|
||||
{
|
||||
/// <summary>The <see cref="T:System.Security.AccessControl.CompoundAce" /> object is used for impersonation.</summary>
|
||||
// Token: 0x040011AC RID: 4524
|
||||
Impersonation = 1
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>These flags affect the security descriptor behavior.</summary>
|
||||
// Token: 0x020004B4 RID: 1204
|
||||
[Flags]
|
||||
public enum ControlFlags
|
||||
{
|
||||
/// <summary>No control flags.</summary>
|
||||
// Token: 0x040011AE RID: 4526
|
||||
None = 0,
|
||||
/// <summary>Specifies that the owner <see cref="T:System.Security.Principal.SecurityIdentifier" /> was obtained by a defaulting mechanism. Set by resource managers only; should not be set by callers. </summary>
|
||||
// Token: 0x040011AF RID: 4527
|
||||
OwnerDefaulted = 1,
|
||||
/// <summary>Specifies that the group <see cref="T:System.Security.Principal.SecurityIdentifier" /> was obtained by a defaulting mechanism. Set by resource managers only; should not be set by callers.</summary>
|
||||
// Token: 0x040011B0 RID: 4528
|
||||
GroupDefaulted = 2,
|
||||
/// <summary>Specifies that the DACL is not null. Set by resource managers or users. </summary>
|
||||
// Token: 0x040011B1 RID: 4529
|
||||
DiscretionaryAclPresent = 4,
|
||||
/// <summary>Specifies that the DACL was obtained by a defaulting mechanism. Set by resource managers only.</summary>
|
||||
// Token: 0x040011B2 RID: 4530
|
||||
DiscretionaryAclDefaulted = 8,
|
||||
/// <summary>Specifies that the SACL is not null. Set by resource managers or users.</summary>
|
||||
// Token: 0x040011B3 RID: 4531
|
||||
SystemAclPresent = 16,
|
||||
/// <summary>Specifies that the SACL was obtained by a defaulting mechanism. Set by resource managers only.</summary>
|
||||
// Token: 0x040011B4 RID: 4532
|
||||
SystemAclDefaulted = 32,
|
||||
/// <summary>Ignored.</summary>
|
||||
// Token: 0x040011B5 RID: 4533
|
||||
DiscretionaryAclUntrusted = 64,
|
||||
/// <summary>Ignored.</summary>
|
||||
// Token: 0x040011B6 RID: 4534
|
||||
ServerSecurity = 128,
|
||||
/// <summary>Ignored.</summary>
|
||||
// Token: 0x040011B7 RID: 4535
|
||||
DiscretionaryAclAutoInheritRequired = 256,
|
||||
/// <summary>Ignored.</summary>
|
||||
// Token: 0x040011B8 RID: 4536
|
||||
SystemAclAutoInheritRequired = 512,
|
||||
/// <summary>Specifies that the Discretionary Access Control List (DACL) has been automatically inherited from the parent. Set by resource managers only.</summary>
|
||||
// Token: 0x040011B9 RID: 4537
|
||||
DiscretionaryAclAutoInherited = 1024,
|
||||
/// <summary>Specifies that the System Access Control List (SACL) has been automatically inherited from the parent. Set by resource managers only.</summary>
|
||||
// Token: 0x040011BA RID: 4538
|
||||
SystemAclAutoInherited = 2048,
|
||||
/// <summary>Specifies that the resource manager prevents auto-inheritance. Set by resource managers or users. </summary>
|
||||
// Token: 0x040011BB RID: 4539
|
||||
DiscretionaryAclProtected = 4096,
|
||||
/// <summary>Specifies that the resource manager prevents auto-inheritance. Set by resource managers or users.</summary>
|
||||
// Token: 0x040011BC RID: 4540
|
||||
SystemAclProtected = 8192,
|
||||
/// <summary>Specifies that the contents of the Reserved field are valid.</summary>
|
||||
// Token: 0x040011BD RID: 4541
|
||||
RMControlValid = 16384,
|
||||
/// <summary>Specifies that the security descriptor binary representation is in the self-relative format. This flag is always set.</summary>
|
||||
// Token: 0x040011BE RID: 4542
|
||||
SelfRelative = 32768
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents an access rule for a cryptographic key. An access rule represents a combination of a user's identity, an access mask, and an access control type (allow or deny). An access rule object also contains information about the how the rule is inherited by child objects and how that inheritance is propagated.</summary>
|
||||
// Token: 0x020004B5 RID: 1205
|
||||
public sealed class CryptoKeyAccessRule : AccessRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CryptoKeyAccessRule" /> class using the specified values. </summary>
|
||||
/// <param name="identity">The identity to which the access rule applies. This parameter must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="cryptoKeyRights">The cryptographic key operation to which this access rule controls access.</param>
|
||||
/// <param name="type">The valid access control type.</param>
|
||||
// Token: 0x06002CF6 RID: 11510 RVA: 0x00093498 File Offset: 0x00091698
|
||||
public CryptoKeyAccessRule(IdentityReference identity, CryptoKeyRights cryptoKeyRights, AccessControlType type)
|
||||
: base(identity, 0, false, InheritanceFlags.None, PropagationFlags.None, AccessControlType.Allow)
|
||||
{
|
||||
this.rights = cryptoKeyRights;
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CryptoKeyAccessRule" /> class using the specified values.</summary>
|
||||
/// <param name="identity">The identity to which the access rule applies.</param>
|
||||
/// <param name="cryptoKeyRights">The cryptographic key operation to which this access rule controls access.</param>
|
||||
/// <param name="type">The valid access control type.</param>
|
||||
// Token: 0x06002CF7 RID: 11511 RVA: 0x000934B0 File Offset: 0x000916B0
|
||||
public CryptoKeyAccessRule(string identity, CryptoKeyRights cryptoKeyRights, AccessControlType type)
|
||||
: this(new SecurityIdentifier(identity), cryptoKeyRights, type)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the cryptographic key operation to which this access rule controls access.</summary>
|
||||
/// <returns>The cryptographic key operation to which this access rule controls access.</returns>
|
||||
// Token: 0x170008D3 RID: 2259
|
||||
// (get) Token: 0x06002CF8 RID: 11512 RVA: 0x000934C0 File Offset: 0x000916C0
|
||||
public CryptoKeyRights CryptoKeyRights
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.rights;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x040011BF RID: 4543
|
||||
private CryptoKeyRights rights;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents an audit rule for a cryptographic key. An audit rule represents a combination of a user's identity and an access mask. An audit rule also contains information about the how the rule is inherited by child objects, how that inheritance is propagated, and for what conditions it is audited.</summary>
|
||||
// Token: 0x020004B6 RID: 1206
|
||||
public sealed class CryptoKeyAuditRule : AuditRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CryptoKeyAuditRule" /> class using the specified values. </summary>
|
||||
/// <param name="identity">The identity to which the audit rule applies. This parameter must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="cryptoKeyRights">The cryptographic key operation for which this audit rule generates audits.</param>
|
||||
/// <param name="flags">The conditions that generate audits.</param>
|
||||
// Token: 0x06002CF9 RID: 11513 RVA: 0x000934C8 File Offset: 0x000916C8
|
||||
public CryptoKeyAuditRule(IdentityReference identity, CryptoKeyRights cryptoKeyRights, AuditFlags flags)
|
||||
: base(identity, 0, false, InheritanceFlags.None, PropagationFlags.None, flags)
|
||||
{
|
||||
this.rights = cryptoKeyRights;
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CryptoKeyAuditRule" /> class using the specified values. </summary>
|
||||
/// <param name="identity">The identity to which the audit rule applies.</param>
|
||||
/// <param name="cryptoKeyRights">The cryptographic key operation for which this audit rule generates audits.</param>
|
||||
/// <param name="flags">The conditions that generate audits.</param>
|
||||
// Token: 0x06002CFA RID: 11514 RVA: 0x000934E0 File Offset: 0x000916E0
|
||||
public CryptoKeyAuditRule(string identity, CryptoKeyRights cryptoKeyRights, AuditFlags flags)
|
||||
: this(new SecurityIdentifier(identity), cryptoKeyRights, flags)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the cryptographic key operation for which this audit rule generates audits.</summary>
|
||||
/// <returns>The cryptographic key operation for which this audit rule generates audits.</returns>
|
||||
// Token: 0x170008D4 RID: 2260
|
||||
// (get) Token: 0x06002CFB RID: 11515 RVA: 0x000934F0 File Offset: 0x000916F0
|
||||
public CryptoKeyRights CryptoKeyRights
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.rights;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x040011C0 RID: 4544
|
||||
private CryptoKeyRights rights;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the cryptographic key operation for which an authorization rule controls access or auditing.</summary>
|
||||
// Token: 0x020004B7 RID: 1207
|
||||
[Flags]
|
||||
public enum CryptoKeyRights
|
||||
{
|
||||
/// <summary>Read the key data.</summary>
|
||||
// Token: 0x040011C2 RID: 4546
|
||||
ReadData = 1,
|
||||
/// <summary>Write key data.</summary>
|
||||
// Token: 0x040011C3 RID: 4547
|
||||
WriteData = 2,
|
||||
/// <summary>Read extended attributes of the key.</summary>
|
||||
// Token: 0x040011C4 RID: 4548
|
||||
ReadExtendedAttributes = 8,
|
||||
/// <summary>Write extended attributes of the key.</summary>
|
||||
// Token: 0x040011C5 RID: 4549
|
||||
WriteExtendedAttributes = 16,
|
||||
/// <summary>Read attributes of the key.</summary>
|
||||
// Token: 0x040011C6 RID: 4550
|
||||
ReadAttributes = 128,
|
||||
/// <summary>Write attributes of the key.</summary>
|
||||
// Token: 0x040011C7 RID: 4551
|
||||
WriteAttributes = 256,
|
||||
/// <summary>Delete the key.</summary>
|
||||
// Token: 0x040011C8 RID: 4552
|
||||
Delete = 65536,
|
||||
/// <summary>Read permissions for the key.</summary>
|
||||
// Token: 0x040011C9 RID: 4553
|
||||
ReadPermissions = 131072,
|
||||
/// <summary>Change permissions for the key.</summary>
|
||||
// Token: 0x040011CA RID: 4554
|
||||
ChangePermissions = 262144,
|
||||
/// <summary>Take ownership of the key.</summary>
|
||||
// Token: 0x040011CB RID: 4555
|
||||
TakeOwnership = 524288,
|
||||
/// <summary>Use the key for synchronization.</summary>
|
||||
// Token: 0x040011CC RID: 4556
|
||||
Synchronize = 1048576,
|
||||
/// <summary>Full control of the key.</summary>
|
||||
// Token: 0x040011CD RID: 4557
|
||||
FullControl = 2032027,
|
||||
/// <summary>A combination of <see cref="F:System.Security.AccessControl.CryptoKeyRights.GenericRead" /> and <see cref="F:System.Security.AccessControl.CryptoKeyRights.GenericWrite" />.</summary>
|
||||
// Token: 0x040011CE RID: 4558
|
||||
GenericAll = 268435456,
|
||||
/// <summary>Not used.</summary>
|
||||
// Token: 0x040011CF RID: 4559
|
||||
GenericExecute = 536870912,
|
||||
/// <summary>Write the key data, extended attributes of the key, attributes of the key, and permissions for the key.</summary>
|
||||
// Token: 0x040011D0 RID: 4560
|
||||
GenericWrite = 1073741824,
|
||||
/// <summary>Read the key data, extended attributes of the key, attributes of the key, and permissions for the key.</summary>
|
||||
// Token: 0x040011D1 RID: 4561
|
||||
GenericRead = -2147483648
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,190 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Provides the ability to control access to a cryptographic key object without direct manipulation of an Access Control List (ACL).</summary>
|
||||
// Token: 0x020004B8 RID: 1208
|
||||
public sealed class CryptoKeySecurity : NativeObjectSecurity
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> class.</summary>
|
||||
// Token: 0x06002CFC RID: 11516 RVA: 0x000934F8 File Offset: 0x000916F8
|
||||
[MonoTODO]
|
||||
public CryptoKeySecurity()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> class by using the specified security descriptor.</summary>
|
||||
/// <param name="securityDescriptor">The security descriptor from which to create the new <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</param>
|
||||
// Token: 0x06002CFD RID: 11517 RVA: 0x00093500 File Offset: 0x00091700
|
||||
[MonoTODO]
|
||||
public CryptoKeySecurity(CommonSecurityDescriptor securityDescriptor)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the <see cref="T:System.Type" /> of the securable object associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</summary>
|
||||
/// <returns>The type of the securable object associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</returns>
|
||||
// Token: 0x170008D5 RID: 2261
|
||||
// (get) Token: 0x06002CFE RID: 11518 RVA: 0x00093508 File Offset: 0x00091708
|
||||
public override Type AccessRightType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(CryptoKeyRights);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the <see cref="T:System.Type" /> of the object associated with the access rules of this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object. The <see cref="T:System.Type" /> object must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</summary>
|
||||
/// <returns>The type of the object associated with the access rules of this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</returns>
|
||||
// Token: 0x170008D6 RID: 2262
|
||||
// (get) Token: 0x06002CFF RID: 11519 RVA: 0x00093514 File Offset: 0x00091714
|
||||
public override Type AccessRuleType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(CryptoKeyAccessRule);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the <see cref="T:System.Type" /> object associated with the audit rules of this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object. The <see cref="T:System.Type" /> object must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</summary>
|
||||
/// <returns>The type of the object associated with the audit rules of this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</returns>
|
||||
// Token: 0x170008D7 RID: 2263
|
||||
// (get) Token: 0x06002D00 RID: 11520 RVA: 0x00093520 File Offset: 0x00091720
|
||||
public override Type AuditRuleType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(CryptoKeyAuditRule);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.AccessRule" /> class with the specified values.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.AccessRule" /> object that this method creates.</returns>
|
||||
/// <param name="identityReference">The identity to which the access rule applies. It must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="accessMask">The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.</param>
|
||||
/// <param name="isInherited">true if this rule is inherited from a parent container.</param>
|
||||
/// <param name="inheritanceFlags">Specifies the inheritance properties of the access rule.</param>
|
||||
/// <param name="propagationFlags">Specifies whether inherited access rules are automatically propagated. The propagation flags are ignored if <paramref name="inheritanceFlags" /> is set to <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="type">Specifies the valid access control type.</param>
|
||||
// Token: 0x06002D01 RID: 11521 RVA: 0x0009352C File Offset: 0x0009172C
|
||||
public sealed override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
|
||||
{
|
||||
return new CryptoKeyAccessRule(identityReference, (CryptoKeyRights)accessMask, type);
|
||||
}
|
||||
|
||||
/// <summary>Adds the specified access rule to the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</summary>
|
||||
/// <param name="rule">The access rule to add.</param>
|
||||
// Token: 0x06002D02 RID: 11522 RVA: 0x00093538 File Offset: 0x00091738
|
||||
[MonoTODO]
|
||||
public void AddAccessRule(CryptoKeyAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes access rules that contain the same security identifier and access mask as the specified access rule from the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</summary>
|
||||
/// <returns>true if the access rule was successfully removed; otherwise, false.</returns>
|
||||
/// <param name="rule">The access rule to remove.</param>
|
||||
// Token: 0x06002D03 RID: 11523 RVA: 0x00093540 File Offset: 0x00091740
|
||||
[MonoTODO]
|
||||
public bool RemoveAccessRule(CryptoKeyAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules that have the same security identifier as the specified access rule from the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</summary>
|
||||
/// <param name="rule">The access rule to remove.</param>
|
||||
// Token: 0x06002D04 RID: 11524 RVA: 0x00093548 File Offset: 0x00091748
|
||||
[MonoTODO]
|
||||
public void RemoveAccessRuleAll(CryptoKeyAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules that exactly match the specified access rule from the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</summary>
|
||||
/// <param name="rule">The access rule to remove.</param>
|
||||
// Token: 0x06002D05 RID: 11525 RVA: 0x00093550 File Offset: 0x00091750
|
||||
[MonoTODO]
|
||||
public void RemoveAccessRuleSpecific(CryptoKeyAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules in the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object and then adds the specified access rule.</summary>
|
||||
/// <param name="rule">The access rule to reset.</param>
|
||||
// Token: 0x06002D06 RID: 11526 RVA: 0x00093558 File Offset: 0x00091758
|
||||
[MonoTODO]
|
||||
public void ResetAccessRule(CryptoKeyAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules that contain the same security identifier and qualifier as the specified access rule in the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object and then adds the specified access rule.</summary>
|
||||
/// <param name="rule">The access rule to set.</param>
|
||||
// Token: 0x06002D07 RID: 11527 RVA: 0x00093560 File Offset: 0x00091760
|
||||
[MonoTODO]
|
||||
public void SetAccessRule(CryptoKeyAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.AuditRule" /> class with the specified values.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.AuditRule" /> object that this method creates.</returns>
|
||||
/// <param name="identityReference">The identity to which the audit rule applies. It must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="accessMask">The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.</param>
|
||||
/// <param name="isInherited">true if this rule is inherited from a parent container.</param>
|
||||
/// <param name="inheritanceFlags">Specifies the inheritance properties of the audit rule.</param>
|
||||
/// <param name="propagationFlags">Specifies whether inherited audit rules are automatically propagated. The propagation flags are ignored if <paramref name="inheritanceFlags" /> is set to <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="flags">Specifies the conditions for which the rule is audited.</param>
|
||||
// Token: 0x06002D08 RID: 11528 RVA: 0x00093568 File Offset: 0x00091768
|
||||
public sealed override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags)
|
||||
{
|
||||
return new CryptoKeyAuditRule(identityReference, (CryptoKeyRights)accessMask, flags);
|
||||
}
|
||||
|
||||
/// <summary>Adds the specified audit rule to the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</summary>
|
||||
/// <param name="rule">The audit rule to add.</param>
|
||||
// Token: 0x06002D09 RID: 11529 RVA: 0x00093574 File Offset: 0x00091774
|
||||
[MonoTODO]
|
||||
public void AddAuditRule(CryptoKeyAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes audit rules that contain the same security identifier and access mask as the specified audit rule from the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</summary>
|
||||
/// <returns>true if the audit rule was successfully removed; otherwise, false.</returns>
|
||||
/// <param name="rule">The audit rule to remove.</param>
|
||||
// Token: 0x06002D0A RID: 11530 RVA: 0x0009357C File Offset: 0x0009177C
|
||||
[MonoTODO]
|
||||
public bool RemoveAuditRule(CryptoKeyAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules that have the same security identifier as the specified audit rule from the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</summary>
|
||||
/// <param name="rule">The audit rule to remove.</param>
|
||||
// Token: 0x06002D0B RID: 11531 RVA: 0x00093584 File Offset: 0x00091784
|
||||
[MonoTODO]
|
||||
public void RemoveAuditRuleAll(CryptoKeyAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules that exactly match the specified audit rule from the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object.</summary>
|
||||
/// <param name="rule">The audit rule to remove.</param>
|
||||
// Token: 0x06002D0C RID: 11532 RVA: 0x0009358C File Offset: 0x0009178C
|
||||
[MonoTODO]
|
||||
public void RemoveAuditRuleSpecific(CryptoKeyAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules that contain the same security identifier and qualifier as the specified audit rule in the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CryptoKeySecurity" /> object and then adds the specified audit rule.</summary>
|
||||
/// <param name="rule">The audit rule to set.</param>
|
||||
// Token: 0x06002D0D RID: 11533 RVA: 0x00093594 File Offset: 0x00091794
|
||||
[MonoTODO]
|
||||
public void SetAuditRule(CryptoKeyAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,87 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents an Access Control Entry (ACE) that is not defined by one of the members of the <see cref="T:System.Security.AccessControl.AceType" /> enumeration.</summary>
|
||||
// Token: 0x020004B9 RID: 1209
|
||||
public sealed class CustomAce : GenericAce
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.CustomAce" /> class.</summary>
|
||||
/// <param name="type">Type of the new Access Control Entry (ACE). This value must be greater than <see cref="F:System.Security.AccessControl.AceType.MaxDefinedAceType" />.</param>
|
||||
/// <param name="flags">Flags that specify information about the inheritance, inheritance propagation, and auditing conditions for the new ACE.</param>
|
||||
/// <param name="opaque">An array of byte values that contains the data for the new ACE. This value can be null. The length of this array must not be greater than the value of the <see cref="F:System.Security.AccessControl.CustomAce.MaxOpaqueLength" /> field, and must be a multiple of four.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">The value of the <paramref name="type" /> parameter is not greater than <see cref="F:System.Security.AccessControl.AceType.MaxDefinedAceType" /> or the length of the <paramref name="opaque" /> array is either greater than the value of the <see cref="F:System.Security.AccessControl.CustomAce.MaxOpaqueLength" /> field or not a multiple of four.</exception>
|
||||
// Token: 0x06002D0E RID: 11534 RVA: 0x0009359C File Offset: 0x0009179C
|
||||
public CustomAce(AceType type, AceFlags flags, byte[] opaque)
|
||||
: base(type)
|
||||
{
|
||||
base.AceFlags = flags;
|
||||
this.SetOpaque(opaque);
|
||||
}
|
||||
|
||||
/// <summary>Gets the length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.CustomAce" /> object. This length should be used before marshaling the ACL into a binary array with the <see cref="M:System.Security.AccessControl.CustomAce.GetBinaryForm" /> method.</summary>
|
||||
/// <returns>The length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.CustomAce" /> object.</returns>
|
||||
// Token: 0x170008D8 RID: 2264
|
||||
// (get) Token: 0x06002D0F RID: 11535 RVA: 0x000935B4 File Offset: 0x000917B4
|
||||
[MonoTODO]
|
||||
public override int BinaryLength
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the length of the opaque data associated with this <see cref="T:System.Security.AccessControl.CustomAce" /> object.</summary>
|
||||
/// <returns>The length of the opaque callback data.</returns>
|
||||
// Token: 0x170008D9 RID: 2265
|
||||
// (get) Token: 0x06002D10 RID: 11536 RVA: 0x000935BC File Offset: 0x000917BC
|
||||
public int OpaqueLength
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.opaque.Length;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Marshals the contents of the <see cref="T:System.Security.AccessControl.CustomAce" /> object into the specified byte array beginning at the specified offset.</summary>
|
||||
/// <param name="binaryForm">The byte array into which the contents of the <see cref="T:System.Security.AccessControl.CustomAce" /> is marshaled.</param>
|
||||
/// <param name="offset">The offset at which to start marshaling.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="offset" /> is negative or too high to allow the entire <see cref="T:System.Security.AccessControl.CustomAce" /> to be copied into <paramref name="array" />.</exception>
|
||||
// Token: 0x06002D11 RID: 11537 RVA: 0x000935C8 File Offset: 0x000917C8
|
||||
[MonoTODO]
|
||||
public override void GetBinaryForm(byte[] binaryForm, int offset)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Returns the opaque data associated with this <see cref="T:System.Security.AccessControl.CustomAce" /> object. </summary>
|
||||
/// <returns>An array of byte values that represents the opaque data associated with this <see cref="T:System.Security.AccessControl.CustomAce" /> object.</returns>
|
||||
// Token: 0x06002D12 RID: 11538 RVA: 0x000935D0 File Offset: 0x000917D0
|
||||
public byte[] GetOpaque()
|
||||
{
|
||||
return (byte[])this.opaque.Clone();
|
||||
}
|
||||
|
||||
/// <summary>Sets the opaque callback data associated with this <see cref="T:System.Security.AccessControl.CustomAce" /> object.</summary>
|
||||
/// <param name="opaque">An array of byte values that represents the opaque callback data for this <see cref="T:System.Security.AccessControl.CustomAce" /> object.</param>
|
||||
// Token: 0x06002D13 RID: 11539 RVA: 0x000935E4 File Offset: 0x000917E4
|
||||
public void SetOpaque(byte[] opaque)
|
||||
{
|
||||
if (opaque == null)
|
||||
{
|
||||
throw new ArgumentNullException("opaque");
|
||||
}
|
||||
this.opaque = (byte[])opaque.Clone();
|
||||
}
|
||||
|
||||
// Token: 0x040011D2 RID: 4562
|
||||
private byte[] opaque;
|
||||
|
||||
/// <summary>Returns the maximum allowed length of an opaque data blob for this <see cref="T:System.Security.AccessControl.CustomAce" /> object.</summary>
|
||||
// Token: 0x040011D3 RID: 4563
|
||||
[MonoTODO]
|
||||
public static readonly int MaxOpaqueLength;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,201 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Provides the ability to control access to directory objects without direct manipulation of Access Control Lists (ACLs).</summary>
|
||||
// Token: 0x020004BA RID: 1210
|
||||
public abstract class DirectoryObjectSecurity : ObjectSecurity
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> class.</summary>
|
||||
// Token: 0x06002D14 RID: 11540 RVA: 0x00093614 File Offset: 0x00091814
|
||||
protected DirectoryObjectSecurity()
|
||||
: base(false, true)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> class with the specified security descriptor.</summary>
|
||||
/// <param name="securityDescriptor">The security descriptor to be associated with the new <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" />object.</param>
|
||||
// Token: 0x06002D15 RID: 11541 RVA: 0x00093620 File Offset: 0x00091820
|
||||
protected DirectoryObjectSecurity(CommonSecurityDescriptor securityDescriptor)
|
||||
: base(securityDescriptor != null && securityDescriptor.IsContainer, true)
|
||||
{
|
||||
if (securityDescriptor == null)
|
||||
{
|
||||
throw new ArgumentNullException("securityDescriptor");
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.AccessRule" /> class with the specified values.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.AccessRule" /> object that this method creates.</returns>
|
||||
/// <param name="identityReference">The identity to which the access rule applies. It must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="accessMask">The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.</param>
|
||||
/// <param name="isInherited">true if this rule is inherited from a parent container.</param>
|
||||
/// <param name="inheritanceFlags">Specifies the inheritance properties of the access rule.</param>
|
||||
/// <param name="propagationFlags">Specifies whether inherited access rules are automatically propagated. The propagation flags are ignored if <paramref name="inheritanceFlags" /> is set to <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="type">Specifies the valid access control type.</param>
|
||||
/// <param name="objectType">The identity of the class of objects to which the new access rule applies.</param>
|
||||
/// <param name="inheritedObjectType">The identity of the class of child objects which can inherit the new access rule.</param>
|
||||
// Token: 0x06002D16 RID: 11542 RVA: 0x0009364C File Offset: 0x0009184C
|
||||
public virtual AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type, Guid objectType, Guid inheritedObjectType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.AuditRule" /> class with the specified values.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.AuditRule" /> object that this method creates.</returns>
|
||||
/// <param name="identityReference">The identity to which the audit rule applies. It must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="accessMask">The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.</param>
|
||||
/// <param name="isInherited">true if this rule is inherited from a parent container.</param>
|
||||
/// <param name="inheritanceFlags">Specifies the inheritance properties of the audit rule.</param>
|
||||
/// <param name="propagationFlags">Specifies whether inherited audit rules are automatically propagated. The propagation flags are ignored if <paramref name="inheritanceFlags" /> is set to <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="flags">Specifies the conditions for which the rule is audited.</param>
|
||||
/// <param name="objectType">The identity of the class of objects to which the new audit rule applies.</param>
|
||||
/// <param name="inheritedObjectType">The identity of the class of child objects which can inherit the new audit rule.</param>
|
||||
// Token: 0x06002D17 RID: 11543 RVA: 0x00093654 File Offset: 0x00091854
|
||||
public virtual AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags, Guid objectType, Guid inheritedObjectType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Gets a collection of the access rules associated with the specified security identifier.</summary>
|
||||
/// <returns>The collection of access rules associated with the specified <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</returns>
|
||||
/// <param name="includeExplicit">true to include access rules explicitly set for the object.</param>
|
||||
/// <param name="includeInherited">true to include inherited access rules.</param>
|
||||
/// <param name="targetType">The security identifier for which to retrieve access rules. This must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</param>
|
||||
/// <PermissionSet>
|
||||
/// <IPermission class="System.Security.Permissions.ReflectionPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="MemberAccess" />
|
||||
/// </PermissionSet>
|
||||
// Token: 0x06002D18 RID: 11544 RVA: 0x0009365C File Offset: 0x0009185C
|
||||
public AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Gets a collection of the audit rules associated with the specified security identifier.</summary>
|
||||
/// <returns>The collection of audit rules associated with the specified <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</returns>
|
||||
/// <param name="includeExplicit">true to include audit rules explicitly set for the object.</param>
|
||||
/// <param name="includeInherited">true to include inherited audit rules.</param>
|
||||
/// <param name="targetType">The security identifier for which to retrieve audit rules. This must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</param>
|
||||
/// <PermissionSet>
|
||||
/// <IPermission class="System.Security.Permissions.ReflectionPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="MemberAccess" />
|
||||
/// </PermissionSet>
|
||||
// Token: 0x06002D19 RID: 11545 RVA: 0x00093664 File Offset: 0x00091864
|
||||
public AuthorizationRuleCollection GetAuditRules(bool includeExplicit, bool includeInherited, Type targetType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Adds the specified access rule to the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The access rule to add.</param>
|
||||
// Token: 0x06002D1A RID: 11546 RVA: 0x0009366C File Offset: 0x0009186C
|
||||
protected void AddAccessRule(ObjectAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Adds the specified audit rule to the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The audit rule to add.</param>
|
||||
// Token: 0x06002D1B RID: 11547 RVA: 0x00093674 File Offset: 0x00091874
|
||||
protected void AddAuditRule(ObjectAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Applies the specified modification to the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the DACL is successfully modified; otherwise, false.</returns>
|
||||
/// <param name="modification">The modification to apply to the DACL.</param>
|
||||
/// <param name="rule">The access rule to modify.</param>
|
||||
/// <param name="modified">true if the DACL is successfully modified; otherwise, false.</param>
|
||||
// Token: 0x06002D1C RID: 11548 RVA: 0x0009367C File Offset: 0x0009187C
|
||||
protected override bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Applies the specified modification to the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the SACL is successfully modified; otherwise, false.</returns>
|
||||
/// <param name="modification">The modification to apply to the SACL.</param>
|
||||
/// <param name="rule">The audit rule to modify.</param>
|
||||
/// <param name="modified">true if the SACL is successfully modified; otherwise, false.</param>
|
||||
// Token: 0x06002D1D RID: 11549 RVA: 0x00093684 File Offset: 0x00091884
|
||||
protected override bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes access rules that contain the same security identifier and access mask as the specified access rule from the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the access rule was successfully removed; otherwise, false.</returns>
|
||||
/// <param name="rule">The access rule to remove.</param>
|
||||
// Token: 0x06002D1E RID: 11550 RVA: 0x0009368C File Offset: 0x0009188C
|
||||
protected bool RemoveAccessRule(ObjectAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules that have the same security identifier as the specified access rule from the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The access rule to remove.</param>
|
||||
// Token: 0x06002D1F RID: 11551 RVA: 0x00093694 File Offset: 0x00091894
|
||||
protected void RemoveAccessRuleAll(ObjectAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules that exactly match the specified access rule from the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The access rule to remove.</param>
|
||||
// Token: 0x06002D20 RID: 11552 RVA: 0x0009369C File Offset: 0x0009189C
|
||||
protected void RemoveAccessRuleSpecific(ObjectAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes audit rules that contain the same security identifier and access mask as the specified audit rule from the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the audit rule was successfully removed; otherwise, false.</returns>
|
||||
/// <param name="rule">The audit rule to remove.</param>
|
||||
// Token: 0x06002D21 RID: 11553 RVA: 0x000936A4 File Offset: 0x000918A4
|
||||
protected bool RemoveAuditRule(ObjectAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules that have the same security identifier as the specified audit rule from the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The audit rule to remove.</param>
|
||||
// Token: 0x06002D22 RID: 11554 RVA: 0x000936AC File Offset: 0x000918AC
|
||||
protected void RemoveAuditRuleAll(ObjectAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules that exactly match the specified audit rule from the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object.</summary>
|
||||
/// <param name="rule">The audit rule to remove.</param>
|
||||
// Token: 0x06002D23 RID: 11555 RVA: 0x000936B4 File Offset: 0x000918B4
|
||||
protected void RemoveAuditRuleSpecific(ObjectAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules in the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object and then adds the specified access rule.</summary>
|
||||
/// <param name="rule">The access rule to reset.</param>
|
||||
// Token: 0x06002D24 RID: 11556 RVA: 0x000936BC File Offset: 0x000918BC
|
||||
protected void ResetAccessRule(ObjectAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules that contain the same security identifier and qualifier as the specified access rule in the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object and then adds the specified access rule.</summary>
|
||||
/// <param name="rule">The access rule to set.</param>
|
||||
// Token: 0x06002D25 RID: 11557 RVA: 0x000936C4 File Offset: 0x000918C4
|
||||
protected void SetAccessRule(ObjectAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules that contain the same security identifier and qualifier as the specified audit rule in the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> object and then adds the specified audit rule.</summary>
|
||||
/// <param name="rule">The audit rule to set.</param>
|
||||
// Token: 0x06002D26 RID: 11558 RVA: 0x000936CC File Offset: 0x000918CC
|
||||
protected void SetAuditRule(ObjectAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents the access control and audit security for a directory. This class cannot be inherited.</summary>
|
||||
// Token: 0x020004BB RID: 1211
|
||||
public sealed class DirectorySecurity : FileSystemSecurity
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.DirectorySecurity" /> class. </summary>
|
||||
/// <exception cref="T:System.PlatformNotSupportedException">The current operating system is not Microsoft Windows 2000 or later.</exception>
|
||||
// Token: 0x06002D27 RID: 11559 RVA: 0x000936D4 File Offset: 0x000918D4
|
||||
public DirectorySecurity()
|
||||
: base(true)
|
||||
{
|
||||
throw new PlatformNotSupportedException();
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.DirectorySecurity" /> class from a specified directory using the specified values of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration.</summary>
|
||||
/// <param name="name">The location of a directory to create a <see cref="T:System.Security.AccessControl.DirectorySecurity" /> object from.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> values that specifies the type of access control list (ACL) information to retrieve. </param>
|
||||
/// <exception cref="T:System.ArgumentException">The <paramref name="name" /> parameter is a zero-length string, contains only white space, or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars" />. </exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="name" /> parameter is null.</exception>
|
||||
/// <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid, (for example, it is on an unmapped drive). </exception>
|
||||
/// <exception cref="T:System.IO.FileNotFoundException">The file specified in the <paramref name="name" /> parameter was not found. </exception>
|
||||
/// <exception cref="T:System.IO.IOException">An I/O error occurred while opening the directory.</exception>
|
||||
/// <exception cref="T:System.NotSupportedException">The <paramref name="name" /> parameter is in an invalid format. </exception>
|
||||
/// <exception cref="T:System.PlatformNotSupportedException">The current operating system is not Microsoft Windows 2000 or later.</exception>
|
||||
/// <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. </exception>
|
||||
/// <exception cref="T:System.Security.AccessControl.PrivilegeNotHeldException">The current system account does not have administrative privileges.</exception>
|
||||
/// <exception cref="T:System.SystemException">The directory could not be found.</exception>
|
||||
/// <exception cref="T:System.UnauthorizedAccessException">The <paramref name="name" /> parameter specified a directory that is read-only.-or- This operation is not supported on the current platform.-or- The caller does not have the required permission.</exception>
|
||||
// Token: 0x06002D28 RID: 11560 RVA: 0x000936E4 File Offset: 0x000918E4
|
||||
public DirectorySecurity(string name, AccessControlSections includeSections)
|
||||
: base(true, name, includeSections)
|
||||
{
|
||||
throw new PlatformNotSupportedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,152 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a Discretionary Access Control List (DACL).</summary>
|
||||
// Token: 0x020004BC RID: 1212
|
||||
public sealed class DiscretionaryAcl : CommonAcl
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> class with the specified values.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object is a container.</param>
|
||||
/// <param name="isDS">true if the new <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object is a directory object Access Control List (ACL).</param>
|
||||
/// <param name="capacity">The number of Access Control Entries (ACEs) this <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object can contain. This number is to be used only as a hint.</param>
|
||||
// Token: 0x06002D29 RID: 11561 RVA: 0x000936F4 File Offset: 0x000918F4
|
||||
public DiscretionaryAcl(bool isContainer, bool isDS, int capacity)
|
||||
: this(isContainer, isDS, 0, capacity)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> class with the specified values from the specified <see cref="T:System.Security.AccessControl.RawAcl" /> object.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object is a container.</param>
|
||||
/// <param name="isDS">true if the new <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object is a directory object Access Control List (ACL).</param>
|
||||
/// <param name="rawAcl">The underlying <see cref="T:System.Security.AccessControl.RawAcl" /> object for the new <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object. Specify null to create an empty ACL.</param>
|
||||
// Token: 0x06002D2A RID: 11562 RVA: 0x00093708 File Offset: 0x00091908
|
||||
public DiscretionaryAcl(bool isContainer, bool isDS, RawAcl rawAcl)
|
||||
: base(isContainer, isDS, 0)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> class with the specified values.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object is a container.</param>
|
||||
/// <param name="isDS">true if the new <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object is a directory object Access Control List (ACL).</param>
|
||||
/// <param name="revision">The revision level of the new <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object.</param>
|
||||
/// <param name="capacity">The number of Access Control Entries (ACEs) this <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object can contain. This number is to be used only as a hint.</param>
|
||||
// Token: 0x06002D2B RID: 11563 RVA: 0x00093714 File Offset: 0x00091914
|
||||
public DiscretionaryAcl(bool isContainer, bool isDS, byte revision, int capacity)
|
||||
: base(isContainer, isDS, revision, capacity)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Adds an Access Control Entry (ACE) with the specified settings to the current <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object.</summary>
|
||||
/// <param name="accessType">The type of access control (allow or deny) to add.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to add an ACE.</param>
|
||||
/// <param name="accessMask">The access rule for the new ACE.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the new ACE.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the new ACE.</param>
|
||||
// Token: 0x06002D2C RID: 11564 RVA: 0x00093724 File Offset: 0x00091924
|
||||
public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Adds an Access Control Entry (ACE) with the specified settings to the current <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type for the new ACE.</summary>
|
||||
/// <param name="accessType">The type of access control (allow or deny) to add.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to add an ACE.</param>
|
||||
/// <param name="accessMask">The access rule for the new ACE.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the new ACE.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the new ACE.</param>
|
||||
/// <param name="objectFlags">Flags that specify if the <paramref name="objectType" /> and <paramref name="inheritedObjectType" /> parameters contain non-null values.</param>
|
||||
/// <param name="objectType">The identity of the class of objects to which the new ACE applies.</param>
|
||||
/// <param name="inheritedObjectType">The identity of the class of child objects which can inherit the new ACE.</param>
|
||||
// Token: 0x06002D2D RID: 11565 RVA: 0x0009372C File Offset: 0x0009192C
|
||||
public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes the specified access control rule from the current <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object.</summary>
|
||||
/// <returns>true if this method successfully removes the specified access; otherwise, false.</returns>
|
||||
/// <param name="accessType">The type of access control (allow or deny) to remove.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to remove an access control rule.</param>
|
||||
/// <param name="accessMask">The access mask for the rule to be removed.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the rule to be removed.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the rule to be removed.</param>
|
||||
// Token: 0x06002D2E RID: 11566 RVA: 0x00093734 File Offset: 0x00091934
|
||||
public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes the specified access control rule from the current <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type.</summary>
|
||||
/// <returns>true if this method successfully removes the specified access; otherwise, false.</returns>
|
||||
/// <param name="accessType">The type of access control (allow or deny) to remove.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to remove an access control rule.</param>
|
||||
/// <param name="accessMask">The access mask for the access control rule to be removed.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the access control rule to be removed.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the access control rule to be removed.</param>
|
||||
/// <param name="objectFlags">Flags that specify if the <paramref name="objectType" /> and <paramref name="inheritedObjectType" /> parameters contain non-null values.</param>
|
||||
/// <param name="objectType">The identity of the class of objects to which the removed access control rule applies.</param>
|
||||
/// <param name="inheritedObjectType">The identity of the class of child objects which can inherit the removed access control rule.</param>
|
||||
// Token: 0x06002D2F RID: 11567 RVA: 0x0009373C File Offset: 0x0009193C
|
||||
public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes the specified Access Control Entry (ACE) from the current <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object.</summary>
|
||||
/// <param name="accessType">The type of access control (allow or deny) to remove.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to remove an ACE.</param>
|
||||
/// <param name="accessMask">The access mask for the ACE to be removed.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the ACE to be removed.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the ACE to be removed.</param>
|
||||
// Token: 0x06002D30 RID: 11568 RVA: 0x00093744 File Offset: 0x00091944
|
||||
public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes the specified Access Control Entry (ACE) from the current <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type for the ACE to be removed.</summary>
|
||||
/// <param name="accessType">The type of access control (allow or deny) to remove.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to remove an ACE.</param>
|
||||
/// <param name="accessMask">The access mask for the ACE to be removed.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the ACE to be removed.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the ACE to be removed.</param>
|
||||
/// <param name="objectFlags">Flags that specify if the <paramref name="objectType" /> and <paramref name="inheritedObjectType" /> parameters contain non-null values.</param>
|
||||
/// <param name="objectType">The identity of the class of objects to which the removed ACE applies.</param>
|
||||
/// <param name="inheritedObjectType">The identity of the class of child objects which can inherit the removed ACE.</param>
|
||||
// Token: 0x06002D31 RID: 11569 RVA: 0x0009374C File Offset: 0x0009194C
|
||||
public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the specified access control for the specified <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</summary>
|
||||
/// <param name="accessType">The type of access control (allow or deny) to set.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to set an ACE.</param>
|
||||
/// <param name="accessMask">The access rule for the new ACE.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the new ACE.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the new ACE.</param>
|
||||
// Token: 0x06002D32 RID: 11570 RVA: 0x00093754 File Offset: 0x00091954
|
||||
public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the specified access control for the specified <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</summary>
|
||||
/// <param name="accessType">The type of access control (allow or deny) to set.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to set an ACE.</param>
|
||||
/// <param name="accessMask">The access rule for the new ACE.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the new ACE.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the new ACE.</param>
|
||||
/// <param name="objectFlags">Flags that specify if the <paramref name="objectType" /> and <paramref name="inheritedObjectType" /> parameters contain non-null values.</param>
|
||||
/// <param name="objectType">The identity of the class of objects to which the new ACE applies.</param>
|
||||
/// <param name="inheritedObjectType">The identity of the class of child objects which can inherit the new ACE.</param>
|
||||
// Token: 0x06002D33 RID: 11571 RVA: 0x0009375C File Offset: 0x0009195C
|
||||
public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a set of access rights allowed or denied for a user or group. This class cannot be inherited. </summary>
|
||||
// Token: 0x020004BD RID: 1213
|
||||
public sealed class EventWaitHandleAccessRule : AccessRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.EventWaitHandleAccessRule" /> class, specifying the user or group the rule applies to, the access rights, and whether the specified access rights are allowed or denied.</summary>
|
||||
/// <param name="identity">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="eventRights">A bitwise combination of <see cref="T:System.Security.AccessControl.EventWaitHandleRights" /> values specifying the rights allowed or denied.</param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values specifying whether the rights are allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="eventRights" /> specifies an invalid value.-or-<paramref name="type" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identity" /> is null.-or-<paramref name="eventRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" /> nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002D34 RID: 11572 RVA: 0x00093764 File Offset: 0x00091964
|
||||
public EventWaitHandleAccessRule(IdentityReference identity, EventWaitHandleRights eventRights, AccessControlType type)
|
||||
: base(identity, 0, false, InheritanceFlags.None, PropagationFlags.None, AccessControlType.Allow)
|
||||
{
|
||||
this.rights = eventRights;
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.EventWaitHandleAccessRule" /> 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.</summary>
|
||||
/// <param name="identity">The name of the user or group the rule applies to.</param>
|
||||
/// <param name="eventRights">A bitwise combination of <see cref="T:System.Security.AccessControl.EventWaitHandleRights" /> values specifying the rights allowed or denied.</param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values specifying whether the rights are allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="eventRights" /> specifies an invalid value.-or-<paramref name="type" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="eventRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is null.-or-<paramref name="identity" /> is a zero-length string.-or-<paramref name="identity" /> is longer than 512 characters.</exception>
|
||||
// Token: 0x06002D35 RID: 11573 RVA: 0x0009377C File Offset: 0x0009197C
|
||||
public EventWaitHandleAccessRule(string identity, EventWaitHandleRights eventRights, AccessControlType type)
|
||||
: this(new SecurityIdentifier(identity), eventRights, type)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the rights allowed or denied by the access rule.</summary>
|
||||
/// <returns>A bitwise combination of <see cref="T:System.Security.AccessControl.EventWaitHandleRights" /> values indicating the rights allowed or denied by the access rule.</returns>
|
||||
// Token: 0x170008DA RID: 2266
|
||||
// (get) Token: 0x06002D36 RID: 11574 RVA: 0x0009378C File Offset: 0x0009198C
|
||||
public EventWaitHandleRights EventWaitHandleRights
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.rights;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x040011D4 RID: 4564
|
||||
private EventWaitHandleRights rights;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a set of access rights to be audited for a user or group. This class cannot be inherited. </summary>
|
||||
// Token: 0x020004BE RID: 1214
|
||||
public sealed class EventWaitHandleAuditRule : AuditRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.EventWaitHandleAuditRule" /> class, specifying the user or group to audit, the rights to audit, and whether to audit success, failure, or both.</summary>
|
||||
/// <param name="identity">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="eventRights">A bitwise combination of <see cref="T:System.Security.AccessControl.EventWaitHandleRights" /> values specifying the kinds of access to audit.</param>
|
||||
/// <param name="flags">A bitwise combination of <see cref="T:System.Security.AccessControl.AuditFlags" /> values specifying whether to audit success, failure, or both.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="eventRights" /> specifies an invalid value.-or-<paramref name="flags" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identity" /> is null. -or-<paramref name="eventRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="flags" /> is <see cref="F:System.Security.AccessControl.AuditFlags.None" />.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" /> nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002D37 RID: 11575 RVA: 0x00093794 File Offset: 0x00091994
|
||||
public EventWaitHandleAuditRule(IdentityReference identity, EventWaitHandleRights eventRights, AuditFlags flags)
|
||||
: base(identity, 0, false, InheritanceFlags.None, PropagationFlags.None, flags)
|
||||
{
|
||||
if (eventRights < EventWaitHandleRights.Modify || eventRights > EventWaitHandleRights.FullControl)
|
||||
{
|
||||
throw new ArgumentOutOfRangeException("eventRights");
|
||||
}
|
||||
if (flags < AuditFlags.None || flags > AuditFlags.Failure)
|
||||
{
|
||||
throw new ArgumentOutOfRangeException("flags");
|
||||
}
|
||||
if (identity == null)
|
||||
{
|
||||
throw new ArgumentNullException("identity");
|
||||
}
|
||||
if (eventRights == (EventWaitHandleRights)0)
|
||||
{
|
||||
throw new ArgumentNullException("eventRights");
|
||||
}
|
||||
if (flags == AuditFlags.None)
|
||||
{
|
||||
throw new ArgumentException("flags");
|
||||
}
|
||||
if (!(identity is SecurityIdentifier))
|
||||
{
|
||||
throw new ArgumentException("identity");
|
||||
}
|
||||
this.rights = eventRights;
|
||||
}
|
||||
|
||||
/// <summary>Gets the access rights affected by the audit rule.</summary>
|
||||
/// <returns>A bitwise combination of <see cref="T:System.Security.AccessControl.EventWaitHandleRights" /> values that indicates the rights affected by the audit rule.</returns>
|
||||
// Token: 0x170008DB RID: 2267
|
||||
// (get) Token: 0x06002D38 RID: 11576 RVA: 0x0009383C File Offset: 0x00091A3C
|
||||
public EventWaitHandleRights EventWaitHandleRights
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.rights;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x040011D5 RID: 4565
|
||||
private EventWaitHandleRights rights;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the access control rights that can be applied to named system event objects.</summary>
|
||||
// Token: 0x020004BF RID: 1215
|
||||
[Flags]
|
||||
public enum EventWaitHandleRights
|
||||
{
|
||||
/// <summary>The right to set or reset the signaled state of a named event.</summary>
|
||||
// Token: 0x040011D7 RID: 4567
|
||||
Modify = 2,
|
||||
/// <summary>The right to delete a named event.</summary>
|
||||
// Token: 0x040011D8 RID: 4568
|
||||
Delete = 65536,
|
||||
/// <summary>The right to open and copy the access rules and audit rules for a named event.</summary>
|
||||
// Token: 0x040011D9 RID: 4569
|
||||
ReadPermissions = 131072,
|
||||
/// <summary>The right to change the security and audit rules associated with a named event.</summary>
|
||||
// Token: 0x040011DA RID: 4570
|
||||
ChangePermissions = 262144,
|
||||
/// <summary>The right to change the owner of a named event.</summary>
|
||||
// Token: 0x040011DB RID: 4571
|
||||
TakeOwnership = 524288,
|
||||
/// <summary>The right to wait on a named event.</summary>
|
||||
// Token: 0x040011DC RID: 4572
|
||||
Synchronize = 1048576,
|
||||
/// <summary>The right to exert full control over a named event, and to modify its access rules and audit rules.</summary>
|
||||
// Token: 0x040011DD RID: 4573
|
||||
FullControl = 2031619
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,217 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents the Windows access control security applied to a named system wait handle. This class cannot be inherited.</summary>
|
||||
// Token: 0x020004C0 RID: 1216
|
||||
public sealed class EventWaitHandleSecurity : NativeObjectSecurity
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.EventWaitHandleSecurity" /> class with default values.</summary>
|
||||
/// <exception cref="T:System.NotSupportedException">This class is not supported on Windows 98 or Windows Millennium Edition.</exception>
|
||||
// Token: 0x06002D39 RID: 11577 RVA: 0x00093844 File Offset: 0x00091A44
|
||||
public EventWaitHandleSecurity()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Gets the enumeration type that the <see cref="T:System.Security.AccessControl.EventWaitHandleSecurity" /> class uses to represent access rights.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.EventWaitHandleRights" /> enumeration.</returns>
|
||||
// Token: 0x170008DC RID: 2268
|
||||
// (get) Token: 0x06002D3A RID: 11578 RVA: 0x00093854 File Offset: 0x00091A54
|
||||
public override Type AccessRightType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(EventWaitHandleRights);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the type that the <see cref="T:System.Security.AccessControl.EventWaitHandleSecurity" /> class uses to represent access rules.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.EventWaitHandleAccessRule" /> class.</returns>
|
||||
// Token: 0x170008DD RID: 2269
|
||||
// (get) Token: 0x06002D3B RID: 11579 RVA: 0x00093860 File Offset: 0x00091A60
|
||||
public override Type AccessRuleType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(EventWaitHandleAccessRule);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the type that the <see cref="T:System.Security.AccessControl.EventWaitHandleSecurity" /> class uses to represent audit rules.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.EventWaitHandleAuditRule" /> class.</returns>
|
||||
// Token: 0x170008DE RID: 2270
|
||||
// (get) Token: 0x06002D3C RID: 11580 RVA: 0x0009386C File Offset: 0x00091A6C
|
||||
public override Type AuditRuleType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(EventWaitHandleAuditRule);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Creates a new access control rule for the specified user, with the specified access rights, access control, and flags.</summary>
|
||||
/// <returns>An <see cref="T:System.Security.AccessControl.EventWaitHandleAccessRule" /> object representing the specified rights for the specified user.</returns>
|
||||
/// <param name="identityReference">An <see cref="T:System.Security.Principal.IdentityReference" /> that identifies the user or group the rule applies to.</param>
|
||||
/// <param name="accessMask">A bitwise combination of <see cref="T:System.Security.AccessControl.EventWaitHandleRights" /> values specifying the access rights to allow or deny, cast to an integer.</param>
|
||||
/// <param name="isInherited">Meaningless for named wait handles, because they have no hierarchy.</param>
|
||||
/// <param name="inheritanceFlags">Meaningless for named wait handles, because they have no hierarchy.</param>
|
||||
/// <param name="propagationFlags">Meaningless for named wait handles, because they have no hierarchy.</param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values specifying whether the rights are allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="accessMask" />, <paramref name="inheritanceFlags" />, <paramref name="propagationFlags" />, or <paramref name="type" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identityReference" /> is null. -or-<paramref name="accessMask" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identityReference" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" />, nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002D3D RID: 11581 RVA: 0x00093878 File Offset: 0x00091A78
|
||||
public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
|
||||
{
|
||||
return new EventWaitHandleAccessRule(identityReference, (EventWaitHandleRights)accessMask, type);
|
||||
}
|
||||
|
||||
/// <summary>Searches for a matching access control rule with which the new rule can be merged. If none are found, adds the new rule.</summary>
|
||||
/// <param name="rule">The access control rule to add.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002D3E RID: 11582 RVA: 0x00093884 File Offset: 0x00091A84
|
||||
[MonoTODO]
|
||||
public void AddAccessRule(EventWaitHandleAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an access control rule with the same user and <see cref="T:System.Security.AccessControl.AccessControlType" /> (allow or deny) as the specified access rule, and with compatible inheritance and propagation flags; if such a rule is found, the rights contained in the specified access rule are removed from it.</summary>
|
||||
/// <returns>true if a compatible rule is found; otherwise, false.</returns>
|
||||
/// <param name="rule">An <see cref="T:System.Security.AccessControl.EventWaitHandleAccessRule" /> that specifies the user and <see cref="T:System.Security.AccessControl.AccessControlType" /> to search for, and a set of inheritance and propagation flags that a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002D3F RID: 11583 RVA: 0x0009388C File Offset: 0x00091A8C
|
||||
[MonoTODO]
|
||||
public bool RemoveAccessRule(EventWaitHandleAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for all access control rules with the same user and <see cref="T:System.Security.AccessControl.AccessControlType" /> (allow or deny) as the specified rule and, if found, removes them.</summary>
|
||||
/// <param name="rule">An <see cref="T:System.Security.AccessControl.EventWaitHandleAccessRule" /> that specifies the user and <see cref="T:System.Security.AccessControl.AccessControlType" /> to search for. Any rights specified by this rule are ignored.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002D40 RID: 11584 RVA: 0x00093894 File Offset: 0x00091A94
|
||||
[MonoTODO]
|
||||
public void RemoveAccessRuleAll(EventWaitHandleAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an access control rule that exactly matches the specified rule and, if found, removes it.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.EventWaitHandleAccessRule" /> to remove.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002D41 RID: 11585 RVA: 0x0009389C File Offset: 0x00091A9C
|
||||
[MonoTODO]
|
||||
public void RemoveAccessRuleSpecific(EventWaitHandleAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access control rules with the same user as the specified rule, regardless of <see cref="T:System.Security.AccessControl.AccessControlType" />, and then adds the specified rule.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.EventWaitHandleAccessRule" /> to add. The user specified by this rule determines the rules to remove before this rule is added.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002D42 RID: 11586 RVA: 0x000938A4 File Offset: 0x00091AA4
|
||||
[MonoTODO]
|
||||
public void ResetAccessRule(EventWaitHandleAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access control rules with the same user and <see cref="T:System.Security.AccessControl.AccessControlType" /> (allow or deny) as the specified rule, and then adds the specified rule.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.EventWaitHandleAccessRule" /> to add. The user and <see cref="T:System.Security.AccessControl.AccessControlType" /> of this rule determine the rules to remove before this rule is added.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002D43 RID: 11587 RVA: 0x000938AC File Offset: 0x00091AAC
|
||||
[MonoTODO]
|
||||
public void SetAccessRule(EventWaitHandleAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Creates a new audit rule, specifying the user the rule applies to, the access rights to audit, and the outcome that triggers the audit rule.</summary>
|
||||
/// <returns>An <see cref="T:System.Security.AccessControl.EventWaitHandleAuditRule" /> object representing the specified audit rule for the specified user. The return type of the method is the base class, <see cref="T:System.Security.AccessControl.AuditRule" />, but the return value can be cast safely to the derived class.</returns>
|
||||
/// <param name="identityReference">An <see cref="T:System.Security.Principal.IdentityReference" /> that identifies the user or group the rule applies to.</param>
|
||||
/// <param name="accessMask">A bitwise combination of <see cref="T:System.Security.AccessControl.EventWaitHandleRights" /> values specifying the access rights to audit, cast to an integer.</param>
|
||||
/// <param name="isInherited">Meaningless for named wait handles, because they have no hierarchy.</param>
|
||||
/// <param name="inheritanceFlags">Meaningless for named wait handles, because they have no hierarchy.</param>
|
||||
/// <param name="propagationFlags">Meaningless for named wait handles, because they have no hierarchy.</param>
|
||||
/// <param name="flags">A bitwise combination of <see cref="T:System.Security.AccessControl.AuditFlags" /> values specifying whether to audit successful access, failed access, or both.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="accessMask" />, <paramref name="inheritanceFlags" />, <paramref name="propagationFlags" />, or <paramref name="flags" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identityReference" /> is null. -or-<paramref name="accessMask" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identityReference" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" />, nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002D44 RID: 11588 RVA: 0x000938B4 File Offset: 0x00091AB4
|
||||
public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags)
|
||||
{
|
||||
return new EventWaitHandleAuditRule(identityReference, (EventWaitHandleRights)accessMask, flags);
|
||||
}
|
||||
|
||||
/// <summary>Searches for an audit rule with which the new rule can be merged. If none are found, adds the new rule.</summary>
|
||||
/// <param name="rule">The audit rule to add. The user specified by this rule determines the search.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002D45 RID: 11589 RVA: 0x000938C0 File Offset: 0x00091AC0
|
||||
[MonoTODO]
|
||||
public void AddAuditRule(EventWaitHandleAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an audit rule with the same user as the specified rule, and with compatible inheritance and propagation flags; if a compatible rule is found, the rights contained in the specified rule are removed from it.</summary>
|
||||
/// <returns>true if a compatible rule is found; otherwise, false.</returns>
|
||||
/// <param name="rule">An <see cref="T:System.Security.AccessControl.EventWaitHandleAuditRule" /> that specifies the user to search for and a set of inheritance and propagation flags that a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002D46 RID: 11590 RVA: 0x000938C8 File Offset: 0x00091AC8
|
||||
[MonoTODO]
|
||||
public bool RemoveAuditRule(EventWaitHandleAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for all audit rules with the same user as the specified rule and, if found, removes them.</summary>
|
||||
/// <param name="rule">An <see cref="T:System.Security.AccessControl.EventWaitHandleAuditRule" /> that specifies the user to search for. Any rights specified by this rule are ignored.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002D47 RID: 11591 RVA: 0x000938D0 File Offset: 0x00091AD0
|
||||
[MonoTODO]
|
||||
public void RemoveAuditRuleAll(EventWaitHandleAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an audit rule that exactly matches the specified rule and, if found, removes it.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.EventWaitHandleAuditRule" /> to remove.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002D48 RID: 11592 RVA: 0x000938D8 File Offset: 0x00091AD8
|
||||
[MonoTODO]
|
||||
public void RemoveAuditRuleSpecific(EventWaitHandleAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules with the same user as the specified rule, regardless of the <see cref="T:System.Security.AccessControl.AuditFlags" /> value, and then adds the specified rule.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.EventWaitHandleAuditRule" /> to add. The user specified by this rule determines the rules to remove before this rule is added.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002D49 RID: 11593 RVA: 0x000938E0 File Offset: 0x00091AE0
|
||||
[MonoTODO]
|
||||
public void SetAuditRule(EventWaitHandleAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents the access control and audit security for a file. This class cannot be inherited.</summary>
|
||||
// Token: 0x020004C1 RID: 1217
|
||||
public sealed class FileSecurity : FileSystemSecurity
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSecurity" /> class. </summary>
|
||||
/// <exception cref="T:System.PlatformNotSupportedException">The current operating system is not Microsoft Windows 2000 or later.</exception>
|
||||
// Token: 0x06002D4A RID: 11594 RVA: 0x000938E8 File Offset: 0x00091AE8
|
||||
public FileSecurity()
|
||||
: base(false)
|
||||
{
|
||||
throw new PlatformNotSupportedException();
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSecurity" /> class from a specified file using the specified values of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration.</summary>
|
||||
/// <param name="fileName">The location of a file to create a <see cref="T:System.Security.AccessControl.FileSecurity" /> object from.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> values that specifies the type of access control list (ACL) information to retrieve. </param>
|
||||
/// <exception cref="T:System.ArgumentException">The <paramref name="fileName" /> parameter is a zero-length string, contains only white space, or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars" />. </exception>
|
||||
/// <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid, (for example, it is on an unmapped drive). </exception>
|
||||
/// <exception cref="T:System.IO.FileNotFoundException">The file specified in the <paramref name="fileName" /> parameter was not found. </exception>
|
||||
/// <exception cref="T:System.IO.IOException">An I/O error occurred while opening the file.</exception>
|
||||
/// <exception cref="T:System.NotSupportedException">
|
||||
/// <paramref name="path" /> is in an invalid format. </exception>
|
||||
/// <exception cref="T:System.Runtime.InteropServices.SEHException">The <paramref name="fileName" /> parameter is null.</exception>
|
||||
/// <exception cref="T:System.PlatformNotSupportedException">The current operating system is not Microsoft Windows 2000 or later.</exception>
|
||||
/// <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. </exception>
|
||||
/// <exception cref="T:System.Security.AccessControl.PrivilegeNotHeldException">The current system account does not have administrative privileges.</exception>
|
||||
/// <exception cref="T:System.SystemException">The file could not be found.</exception>
|
||||
/// <exception cref="T:System.UnauthorizedAccessException">The <paramref name="fileName" /> parameter specified a file that is read-only.-or- This operation is not supported on the current platform.-or- The <paramref name="fileName" /> parameter specified a directory.-or- The caller does not have the required permission.</exception>
|
||||
// Token: 0x06002D4B RID: 11595 RVA: 0x000938F8 File Offset: 0x00091AF8
|
||||
public FileSecurity(string fileName, AccessControlSections includeSections)
|
||||
: base(false, fileName, includeSections)
|
||||
{
|
||||
throw new PlatformNotSupportedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents an abstraction of an access control entry (ACE) that defines an access rule for a file or directory. This class cannot be inherited.</summary>
|
||||
// Token: 0x020004C2 RID: 1218
|
||||
public sealed class FileSystemAccessRule : AccessRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> class using a reference to a user account, a value that specifies the type of operation associated with the access rule, and a value that specifies whether to allow or deny the operation. </summary>
|
||||
/// <param name="identity">An <see cref="T:System.Security.Principal.IdentityReference" /> object that encapsulates a reference to a user account.</param>
|
||||
/// <param name="fileSystemRights">One of the <see cref="T:System.Security.AccessControl.FileSystemRights" /> values that specifies the type of operation associated with the access rule. </param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values that specifies whether to allow or deny the operation.</param>
|
||||
/// <exception cref="T:System.ArgumentException">The <paramref name="identity" /> parameter is not an <see cref="T:System.Security.Principal.IdentityReference" /> object.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="identity" /> parameter is null.</exception>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">An incorrect enumeration was passed to the <paramref name="type " />parameter.</exception>
|
||||
// Token: 0x06002D4C RID: 11596 RVA: 0x00093908 File Offset: 0x00091B08
|
||||
public FileSystemAccessRule(IdentityReference identity, FileSystemRights fileSystemRights, AccessControlType type)
|
||||
: this(identity, fileSystemRights, InheritanceFlags.None, PropagationFlags.None, type)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> class using the name of a user account, a value that specifies the type of operation associated with the access rule, and a value that describes whether to allow or deny the operation. </summary>
|
||||
/// <param name="identity">The name of a user account.</param>
|
||||
/// <param name="fileSystemRights">One of the <see cref="T:System.Security.AccessControl.FileSystemRights" /> values that specifies the type of operation associated with the access rule. </param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values that specifies whether to allow or deny the operation.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="identity" /> parameter is null.</exception>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">An incorrect enumeration was passed to the <paramref name="type " />parameter.</exception>
|
||||
// Token: 0x06002D4D RID: 11597 RVA: 0x00093918 File Offset: 0x00091B18
|
||||
public FileSystemAccessRule(string identity, FileSystemRights fileSystemRights, AccessControlType type)
|
||||
: this(new SecurityIdentifier(identity), fileSystemRights, InheritanceFlags.None, PropagationFlags.None, type)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> class using a reference to a user account, a value that specifies the type of operation associated with the access rule, a value that determines how rights are inherited, a value that determines how rights are propagated, and a value that specifies whether to allow or deny the operation.</summary>
|
||||
/// <param name="identity">An <see cref="T:System.Security.Principal.IdentityReference" /> object that encapsulates a reference to a user account.</param>
|
||||
/// <param name="fileSystemRights">One of the <see cref="T:System.Security.AccessControl.FileSystemRights" /> values that specifies the type of operation associated with the access rule.</param>
|
||||
/// <param name="inheritanceFlags">One of the <see cref="T:System.Security.AccessControl.InheritanceFlags" /> values that specifies how access masks are propagated to child objects.</param>
|
||||
/// <param name="propagationFlags">One of the <see cref="T:System.Security.AccessControl.PropagationFlags" /> values that specifies how Access Control Entries (ACEs) are propagated to child objects.</param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values that specifies whether to allow or deny the operation.</param>
|
||||
/// <exception cref="T:System.ArgumentException">The <paramref name="identity" /> parameter is not an <see cref="T:System.Security.Principal.IdentityReference" /> object.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="identity" /> parameter is null.</exception>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">An incorrect enumeration was passed to the <paramref name="type " />parameter.-or-An incorrect enumeration was passed to the <paramref name="inheritanceFlags " />parameter.-or-An incorrect enumeration was passed to the <paramref name="propagationFlags " />parameter.</exception>
|
||||
// Token: 0x06002D4E RID: 11598 RVA: 0x0009392C File Offset: 0x00091B2C
|
||||
public FileSystemAccessRule(IdentityReference identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
|
||||
: base(identity, (int)fileSystemRights, false, inheritanceFlags, propagationFlags, type)
|
||||
{
|
||||
this.rights = fileSystemRights;
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> class using the name of a user account, a value that specifies the type of operation associated with the access rule, a value that determines how rights are inherited, a value that determines how rights are propagated, and a value that specifies whether to allow or deny the operation.</summary>
|
||||
/// <param name="identity">The name of a user account.</param>
|
||||
/// <param name="fileSystemRights">One of the <see cref="T:System.Security.AccessControl.FileSystemRights" /> values that specifies the type of operation associated with the access rule.</param>
|
||||
/// <param name="inheritanceFlags">One of the <see cref="T:System.Security.AccessControl.InheritanceFlags" /> values that specifies how access masks are propagated to child objects.</param>
|
||||
/// <param name="propagationFlags">One of the <see cref="T:System.Security.AccessControl.PropagationFlags" /> values that specifies how Access Control Entries (ACEs) are propagated to child objects.</param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values that specifies whether to allow or deny the operation.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="identity" /> parameter is null.</exception>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">An incorrect enumeration was passed to the <paramref name="type " />parameter.-or-An incorrect enumeration was passed to the <paramref name="inheritanceFlags " />parameter.-or-An incorrect enumeration was passed to the <paramref name="propagationFlags " />parameter.</exception>
|
||||
// Token: 0x06002D4F RID: 11599 RVA: 0x00093944 File Offset: 0x00091B44
|
||||
public FileSystemAccessRule(string identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
|
||||
: this(new SecurityIdentifier(identity), fileSystemRights, inheritanceFlags, propagationFlags, type)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the <see cref="T:System.Security.AccessControl.FileSystemRights" /> flags associated with the current <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.FileSystemRights" /> flags associated with the current <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> object.</returns>
|
||||
// Token: 0x170008DF RID: 2271
|
||||
// (get) Token: 0x06002D50 RID: 11600 RVA: 0x00093958 File Offset: 0x00091B58
|
||||
public FileSystemRights FileSystemRights
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.rights;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x040011DE RID: 4574
|
||||
private FileSystemRights rights;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents an abstraction of an access control entry (ACE) that defines an audit rule for a file or directory. This class cannot be inherited.</summary>
|
||||
// Token: 0x020004C3 RID: 1219
|
||||
public sealed class FileSystemAuditRule : AuditRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> class using a reference to a user account, a value that specifies the type of operation associated with the audit rule, and a value that specifies when to perform auditing. </summary>
|
||||
/// <param name="identity">An <see cref="T:System.Security.Principal.IdentityReference" /> object that encapsulates a reference to a user account.</param>
|
||||
/// <param name="fileSystemRights">One of the <see cref="T:System.Security.AccessControl.FileSystemRights" /> values that specifies the type of operation associated with the audit rule. </param>
|
||||
/// <param name="flags">One of the <see cref="T:System.Security.AccessControl.AuditFlags" /> values that specifies when to perform auditing.</param>
|
||||
/// <exception cref="T:System.ArgumentException">The <paramref name="identity" /> parameter is not an <see cref="T:System.Security.Principal.IdentityReference" /> object.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="identity" /> parameter is null.</exception>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">An incorrect enumeration was passed to the <paramref name="flags" /> parameter.-or-The <see cref="F:System.Security.AccessControl.AuditFlags.None" /> value was passed to the <paramref name="flags" /> parameter.</exception>
|
||||
// Token: 0x06002D51 RID: 11601 RVA: 0x00093960 File Offset: 0x00091B60
|
||||
public FileSystemAuditRule(IdentityReference identity, FileSystemRights fileSystemRights, AuditFlags flags)
|
||||
: this(identity, fileSystemRights, InheritanceFlags.None, PropagationFlags.None, flags)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> class using a user account name, a value that specifies the type of operation associated with the audit rule, and a value that specifies when to perform auditing.</summary>
|
||||
/// <param name="identity">The name of a user account.</param>
|
||||
/// <param name="fileSystemRights">One of the <see cref="T:System.Security.AccessControl.FileSystemRights" /> values that specifies the type of operation associated with the audit rule. </param>
|
||||
/// <param name="flags">One of the <see cref="T:System.Security.AccessControl.AuditFlags" /> values that specifies when to perform auditing.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">An incorrect enumeration was passed to the <paramref name="flags" /> parameter.-or-The <see cref="F:System.Security.AccessControl.AuditFlags.None" /> value was passed to the <paramref name="flags" /> parameter.</exception>
|
||||
// Token: 0x06002D52 RID: 11602 RVA: 0x00093970 File Offset: 0x00091B70
|
||||
public FileSystemAuditRule(string identity, FileSystemRights fileSystemRights, AuditFlags flags)
|
||||
: this(new SecurityIdentifier(identity), fileSystemRights, flags)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> class using the name of a reference to a user account, a value that specifies the type of operation associated with the audit rule, a value that determines how rights are inherited, a value that determines how rights are propagated, and a value that specifies when to perform auditing. </summary>
|
||||
/// <param name="identity">An <see cref="T:System.Security.Principal.IdentityReference" /> object that encapsulates a reference to a user account.</param>
|
||||
/// <param name="fileSystemRights">One of the <see cref="T:System.Security.AccessControl.FileSystemRights" /> values that specifies the type of operation associated with the audit rule.</param>
|
||||
/// <param name="inheritanceFlags">One of the <see cref="T:System.Security.AccessControl.InheritanceFlags" /> values that specifies how access masks are propagated to child objects.</param>
|
||||
/// <param name="propagationFlags">One of the <see cref="T:System.Security.AccessControl.PropagationFlags" /> values that specifies how Access Control Entries (ACEs) are propagated to child objects.</param>
|
||||
/// <param name="flags">One of the <see cref="T:System.Security.AccessControl.AuditFlags" /> values that specifies when to perform auditing.</param>
|
||||
/// <exception cref="T:System.ArgumentException">The <paramref name="identity" /> parameter is not an <see cref="T:System.Security.Principal.IdentityReference" /> object.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="identity" /> parameter is null.</exception>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">An incorrect enumeration was passed to the <paramref name="flags" /> parameter.-or-The <see cref="F:System.Security.AccessControl.AuditFlags.None" /> value was passed to the <paramref name="flags" /> parameter.</exception>
|
||||
// Token: 0x06002D53 RID: 11603 RVA: 0x00093980 File Offset: 0x00091B80
|
||||
public FileSystemAuditRule(IdentityReference identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags)
|
||||
: base(identity, 0, false, inheritanceFlags, propagationFlags, flags)
|
||||
{
|
||||
this.rights = fileSystemRights;
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> class using the name of a user account, a value that specifies the type of operation associated with the audit rule, a value that determines how rights are inherited, a value that determines how rights are propagated, and a value that specifies when to perform auditing. </summary>
|
||||
/// <param name="identity">The name of a user account.</param>
|
||||
/// <param name="fileSystemRights">One of the <see cref="T:System.Security.AccessControl.FileSystemRights" /> values that specifies the type of operation associated with the audit rule.</param>
|
||||
/// <param name="inheritanceFlags">One of the <see cref="T:System.Security.AccessControl.InheritanceFlags" /> values that specifies how access masks are propagated to child objects.</param>
|
||||
/// <param name="propagationFlags">One of the <see cref="T:System.Security.AccessControl.PropagationFlags" /> values that specifies how Access Control Entries (ACEs) are propagated to child objects.</param>
|
||||
/// <param name="flags">One of the <see cref="T:System.Security.AccessControl.AuditFlags" /> values that specifies when to perform auditing.</param>
|
||||
// Token: 0x06002D54 RID: 11604 RVA: 0x00093998 File Offset: 0x00091B98
|
||||
public FileSystemAuditRule(string identity, FileSystemRights fileSystemRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags)
|
||||
: this(new SecurityIdentifier(identity), fileSystemRights, inheritanceFlags, propagationFlags, flags)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the <see cref="T:System.Security.AccessControl.FileSystemRights" /> flags associated with the current <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.FileSystemRights" /> flags associated with the current <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object.</returns>
|
||||
// Token: 0x170008E0 RID: 2272
|
||||
// (get) Token: 0x06002D55 RID: 11605 RVA: 0x000939AC File Offset: 0x00091BAC
|
||||
public FileSystemRights FileSystemRights
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.rights;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x040011DF RID: 4575
|
||||
private FileSystemRights rights;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Defines the access rights to use when creating access and audit rules. </summary>
|
||||
// Token: 0x020004C4 RID: 1220
|
||||
[Flags]
|
||||
public enum FileSystemRights
|
||||
{
|
||||
/// <summary>Specifies the right to read the contents of a directory.</summary>
|
||||
// Token: 0x040011E1 RID: 4577
|
||||
ListDirectory = 1,
|
||||
/// <summary>Specifies the right to open and copy a file or folder. This does not include the right to read file system attributes, extended file system attributes, or access and audit rules.</summary>
|
||||
// Token: 0x040011E2 RID: 4578
|
||||
ReadData = 1,
|
||||
/// <summary>Specifies the right to create a file. </summary>
|
||||
// Token: 0x040011E3 RID: 4579
|
||||
CreateFiles = 2,
|
||||
/// <summary>Specifies the right to open and write to a file or folder. This does not include the right to open and write file system attributes, extended file system attributes, or access and audit rules.</summary>
|
||||
// Token: 0x040011E4 RID: 4580
|
||||
WriteData = 2,
|
||||
/// <summary>Specifies the right to append data to the end of a file.</summary>
|
||||
// Token: 0x040011E5 RID: 4581
|
||||
AppendData = 4,
|
||||
/// <summary>Specifies the right to create a folder. </summary>
|
||||
// Token: 0x040011E6 RID: 4582
|
||||
CreateDirectories = 4,
|
||||
/// <summary>Specifies the right to open and copy extended file system attributes from a folder or file. For example, this value specifies the right to view author and content information. This does not include the right to read data, file system attributes, or access and audit rules.</summary>
|
||||
// Token: 0x040011E7 RID: 4583
|
||||
ReadExtendedAttributes = 8,
|
||||
/// <summary>Specifies the right to open and write extended file system attributes to a folder or file. This does not include the ability to write data, attributes, or access and audit rules.</summary>
|
||||
// Token: 0x040011E8 RID: 4584
|
||||
WriteExtendedAttributes = 16,
|
||||
/// <summary>Specifies the right to run an application file.</summary>
|
||||
// Token: 0x040011E9 RID: 4585
|
||||
ExecuteFile = 32,
|
||||
/// <summary>Specifies the right to list the contents of a folder and to run applications contained within that folder.</summary>
|
||||
// Token: 0x040011EA RID: 4586
|
||||
Traverse = 32,
|
||||
/// <summary>Specifies the right to delete a folder and any files contained within that folder.</summary>
|
||||
// Token: 0x040011EB RID: 4587
|
||||
DeleteSubdirectoriesAndFiles = 64,
|
||||
/// <summary>Specifies the right to open and copy file system attributes from a folder or file. For example, this value specifies the right to view the file creation or modified date. This does not include the right to read data, extended file system attributes, or access and audit rules.</summary>
|
||||
// Token: 0x040011EC RID: 4588
|
||||
ReadAttributes = 128,
|
||||
/// <summary>Specifies the right to open and write file system attributes to a folder or file. This does not include the ability to write data, extended attributes, or access and audit rules.</summary>
|
||||
// Token: 0x040011ED RID: 4589
|
||||
WriteAttributes = 256,
|
||||
/// <summary>Specifies the right to create folders and files, and to add or remove data from files. This right includes the <see cref="F:System.Security.AccessControl.FileSystemRights.WriteData" /> right, <see cref="F:System.Security.AccessControl.FileSystemRights.AppendData" /> right, <see cref="F:System.Security.AccessControl.FileSystemRights.WriteExtendedAttributes" /> right, and <see cref="F:System.Security.AccessControl.FileSystemRights.WriteAttributes" /> right. </summary>
|
||||
// Token: 0x040011EE RID: 4590
|
||||
Write = 278,
|
||||
/// <summary>Specifies the right to delete a folder or file. </summary>
|
||||
// Token: 0x040011EF RID: 4591
|
||||
Delete = 65536,
|
||||
/// <summary>Specifies the right to open and copy access and audit rules from a folder or file. This does not include the right to read data, file system attributes, and extended file system attributes. </summary>
|
||||
// Token: 0x040011F0 RID: 4592
|
||||
ReadPermissions = 131072,
|
||||
/// <summary>Specifies the right to open and copy folders or files as read-only. This right includes the <see cref="F:System.Security.AccessControl.FileSystemRights.ReadData" /> right, <see cref="F:System.Security.AccessControl.FileSystemRights.ReadExtendedAttributes" /> right, <see cref="F:System.Security.AccessControl.FileSystemRights.ReadAttributes" /> right, and <see cref="F:System.Security.AccessControl.FileSystemRights.ReadPermissions" /> right.</summary>
|
||||
// Token: 0x040011F1 RID: 4593
|
||||
Read = 131209,
|
||||
/// <summary>Specifies the right to open and copy folders or files as read-only, and to run application files. This right includes the <see cref="F:System.Security.AccessControl.FileSystemRights.Read" /> right and the <see cref="F:System.Security.AccessControl.FileSystemRights.ExecuteFile" /> right.</summary>
|
||||
// Token: 0x040011F2 RID: 4594
|
||||
ReadAndExecute = 131241,
|
||||
/// <summary>Specifies the right to read, write, list folder contents, delete folders and files, and run application files. This right includes the <see cref="F:System.Security.AccessControl.FileSystemRights.ReadAndExecute" /> right, the <see cref="F:System.Security.AccessControl.FileSystemRights.Write" /> right, and the <see cref="F:System.Security.AccessControl.FileSystemRights.Delete" /> right.</summary>
|
||||
// Token: 0x040011F3 RID: 4595
|
||||
Modify = 197055,
|
||||
/// <summary>Specifies the right to change the security and audit rules associated with a file or folder.</summary>
|
||||
// Token: 0x040011F4 RID: 4596
|
||||
ChangePermissions = 262144,
|
||||
/// <summary>Specifies the right to change the owner of a folder or file. Note that owners of a resource have full access to that resource.</summary>
|
||||
// Token: 0x040011F5 RID: 4597
|
||||
TakeOwnership = 524288,
|
||||
/// <summary>Specifies whether the application can wait for a file handle to synchronize with the completion of an I/O operation.</summary>
|
||||
// Token: 0x040011F6 RID: 4598
|
||||
Synchronize = 1048576,
|
||||
/// <summary>Specifies the right to exert full control over a folder or file, and to modify access control and audit rules. This value represents the right to do anything with a file and is the combination of all rights in this enumeration.</summary>
|
||||
// Token: 0x040011F7 RID: 4599
|
||||
FullControl = 2032127
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,206 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents the access control and audit security for a file or directory.</summary>
|
||||
// Token: 0x020004C5 RID: 1221
|
||||
public abstract class FileSystemSecurity : NativeObjectSecurity
|
||||
{
|
||||
// Token: 0x06002D56 RID: 11606 RVA: 0x000939B4 File Offset: 0x00091BB4
|
||||
internal FileSystemSecurity(bool isContainer)
|
||||
: base(isContainer, ResourceType.FileObject)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06002D57 RID: 11607 RVA: 0x000939C0 File Offset: 0x00091BC0
|
||||
internal FileSystemSecurity(bool isContainer, string name, AccessControlSections includeSections)
|
||||
: base(isContainer, ResourceType.FileObject, name, includeSections)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the enumeration that the <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class uses to represent access rights.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.FileSystemRights" /> enumeration.</returns>
|
||||
// Token: 0x170008E1 RID: 2273
|
||||
// (get) Token: 0x06002D58 RID: 11608 RVA: 0x000939CC File Offset: 0x00091BCC
|
||||
public override Type AccessRightType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(FileSystemRights);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the enumeration that the <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class uses to represent access rules.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.FileSystemAccessRule" /> class.</returns>
|
||||
// Token: 0x170008E2 RID: 2274
|
||||
// (get) Token: 0x06002D59 RID: 11609 RVA: 0x000939D8 File Offset: 0x00091BD8
|
||||
public override Type AccessRuleType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(FileSystemAccessRule);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the type that the <see cref="T:System.Security.AccessControl.FileSystemSecurity" /> class uses to represent audit rules.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> class.</returns>
|
||||
// Token: 0x170008E3 RID: 2275
|
||||
// (get) Token: 0x06002D5A RID: 11610 RVA: 0x000939E4 File Offset: 0x00091BE4
|
||||
public override Type AuditRuleType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(FileSystemAuditRule);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>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.</summary>
|
||||
/// <returns>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.</returns>
|
||||
/// <param name="identityReference">An <see cref="T:System.Security.Principal.IdentityReference" /> object that represents a user account.</param>
|
||||
/// <param name="accessMask">An integer that specifies an access type.</param>
|
||||
/// <param name="isInherited">true if the access rule is inherited; otherwise, false. </param>
|
||||
/// <param name="inheritanceFlags">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">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">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values that specifies whether access is allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="accessMask" />, <paramref name="inheritanceFlags" />, <paramref name="propagationFlags" />, or <paramref name="type" /> parameters specify an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="identityReference" /> parameter is null. -or-The <paramref name="accessMask" /> parameter is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">The <paramref name="identityReference" /> parameter is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" />, nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002D5B RID: 11611 RVA: 0x000939F0 File Offset: 0x00091BF0
|
||||
[MonoTODO]
|
||||
public sealed override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
|
||||
{
|
||||
return new FileSystemAccessRule(identityReference, (FileSystemRights)accessMask, inheritanceFlags, propagationFlags, type);
|
||||
}
|
||||
|
||||
/// <summary>Adds the specified access control list (ACL) permission to the current file or directory.</summary>
|
||||
/// <param name="rule">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>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="rule" /> parameter is null.</exception>
|
||||
// Token: 0x06002D5C RID: 11612 RVA: 0x00093A00 File Offset: 0x00091C00
|
||||
[MonoTODO]
|
||||
public void AddAccessRule(FileSystemAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all matching allow or deny access control list (ACL) permissions from the current file or directory.</summary>
|
||||
/// <returns>true if the access rule was removed; otherwise, false.</returns>
|
||||
/// <param name="rule">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>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="rule" /> parameter is null.</exception>
|
||||
// Token: 0x06002D5D RID: 11613 RVA: 0x00093A08 File Offset: 0x00091C08
|
||||
[MonoTODO]
|
||||
public bool RemoveAccessRule(FileSystemAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access control list (ACL) permissions for the specified user from the current file or directory.</summary>
|
||||
/// <param name="rule">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>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="rule" /> parameter is null.</exception>
|
||||
// Token: 0x06002D5E RID: 11614 RVA: 0x00093A10 File Offset: 0x00091C10
|
||||
[MonoTODO]
|
||||
public void RemoveAccessRuleAll(FileSystemAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes a single matching allow or deny access control list (ACL) permission from the current file or directory.</summary>
|
||||
/// <param name="rule">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>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="rule" /> parameter is null.</exception>
|
||||
// Token: 0x06002D5F RID: 11615 RVA: 0x00093A18 File Offset: 0x00091C18
|
||||
[MonoTODO]
|
||||
public void RemoveAccessRuleSpecific(FileSystemAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Adds the specified access control list (ACL) permission to the current file or directory and removes all matching ACL permissions.</summary>
|
||||
/// <param name="rule">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>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="rule" /> parameter is null.</exception>
|
||||
// Token: 0x06002D60 RID: 11616 RVA: 0x00093A20 File Offset: 0x00091C20
|
||||
[MonoTODO]
|
||||
public void ResetAccessRule(FileSystemAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the specified access control list (ACL) permission for the current file or directory. </summary>
|
||||
/// <param name="rule">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>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="rule" /> parameter is null.</exception>
|
||||
// Token: 0x06002D61 RID: 11617 RVA: 0x00093A28 File Offset: 0x00091C28
|
||||
[MonoTODO]
|
||||
public void SetAccessRule(FileSystemAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> class representing the specified audit rule for the specified user.</summary>
|
||||
/// <returns>A new <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object representing the specified audit rule for the specified user.</returns>
|
||||
/// <param name="identityReference">An <see cref="T:System.Security.Principal.IdentityReference" /> object that represents a user account.</param>
|
||||
/// <param name="accessMask">An integer that specifies an access type.</param>
|
||||
/// <param name="isInherited">true if the access rule is inherited; otherwise, false. </param>
|
||||
/// <param name="inheritanceFlags">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">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">One of the <see cref="T:System.Security.AccessControl.AuditFlags" /> values that specifies the type of auditing to perform.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="accessMask" />, <paramref name="inheritanceFlags" />, <paramref name="propagationFlags" />, or <paramref name="flags" /> properties specify an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="identityReference" /> property is null. -or-The <paramref name="accessMask" /> property is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">The <paramref name="identityReference" /> property is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" />, nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002D62 RID: 11618 RVA: 0x00093A30 File Offset: 0x00091C30
|
||||
[MonoTODO]
|
||||
public sealed override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags)
|
||||
{
|
||||
return new FileSystemAuditRule(identityReference, (FileSystemRights)accessMask, inheritanceFlags, propagationFlags, flags);
|
||||
}
|
||||
|
||||
/// <summary>Adds the specified audit rule to the current file or directory.</summary>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object that represents an audit rule to add to a file or directory.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="rule" /> parameter is null.</exception>
|
||||
// Token: 0x06002D63 RID: 11619 RVA: 0x00093A40 File Offset: 0x00091C40
|
||||
[MonoTODO]
|
||||
public void AddAuditRule(FileSystemAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all matching allow or deny audit rules from the current file or directory.</summary>
|
||||
/// <returns>true if the audit rule was removed; otherwise, false</returns>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object that represents an audit rule to remove from a file or directory.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="rule" /> parameter is null.</exception>
|
||||
// Token: 0x06002D64 RID: 11620 RVA: 0x00093A48 File Offset: 0x00091C48
|
||||
[MonoTODO]
|
||||
public bool RemoveAuditRule(FileSystemAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules for the specified user from the current file or directory.</summary>
|
||||
/// <param name="rule">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>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="rule" /> parameter is null.</exception>
|
||||
// Token: 0x06002D65 RID: 11621 RVA: 0x00093A50 File Offset: 0x00091C50
|
||||
[MonoTODO]
|
||||
public void RemoveAuditRuleAll(FileSystemAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes a single matching allow or deny audit rule from the current file or directory.</summary>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object that represents an audit rule to remove from a file or directory.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="rule" /> parameter is null.</exception>
|
||||
// Token: 0x06002D66 RID: 11622 RVA: 0x00093A58 File Offset: 0x00091C58
|
||||
[MonoTODO]
|
||||
public void RemoveAuditRuleSpecific(FileSystemAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the specified audit rule for the current file or directory.</summary>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.FileSystemAuditRule" /> object that represents an audit rule to set for a file or directory.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">The <paramref name="rule" /> parameter is null.</exception>
|
||||
// Token: 0x06002D67 RID: 11623 RVA: 0x00093A60 File Offset: 0x00091C60
|
||||
[MonoTODO]
|
||||
public void SetAuditRule(FileSystemAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,201 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents an Access Control Entry (ACE), and is the base class for all other ACE classes.</summary>
|
||||
// Token: 0x020004C6 RID: 1222
|
||||
public abstract class GenericAce
|
||||
{
|
||||
// Token: 0x06002D68 RID: 11624 RVA: 0x00093A68 File Offset: 0x00091C68
|
||||
internal GenericAce(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
|
||||
{
|
||||
this.inheritance = inheritanceFlags;
|
||||
this.propagation = propagationFlags;
|
||||
}
|
||||
|
||||
// Token: 0x06002D69 RID: 11625 RVA: 0x00093A80 File Offset: 0x00091C80
|
||||
internal GenericAce(AceType type)
|
||||
{
|
||||
if (type <= AceType.SystemAlarmCallbackObject)
|
||||
{
|
||||
throw new ArgumentOutOfRangeException("type");
|
||||
}
|
||||
this.ace_type = type;
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the <see cref="T:System.Security.AccessControl.AceFlags" /> associated with this <see cref="T:System.Security.AccessControl.GenericAce" /> object.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.AceFlags" /> associated with this <see cref="T:System.Security.AccessControl.GenericAce" /> object.</returns>
|
||||
// Token: 0x170008E4 RID: 2276
|
||||
// (get) Token: 0x06002D6A RID: 11626 RVA: 0x00093AB0 File Offset: 0x00091CB0
|
||||
// (set) Token: 0x06002D6B RID: 11627 RVA: 0x00093AB8 File Offset: 0x00091CB8
|
||||
public AceFlags AceFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.aceflags;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.aceflags = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the type of this Access Control Entry (ACE).</summary>
|
||||
/// <returns>The type of this ACE.</returns>
|
||||
// Token: 0x170008E5 RID: 2277
|
||||
// (get) Token: 0x06002D6C RID: 11628 RVA: 0x00093AC4 File Offset: 0x00091CC4
|
||||
public AceType AceType
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.ace_type;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the audit information associated with this Access Control Entry (ACE).</summary>
|
||||
/// <returns>The audit information associated with this Access Control Entry (ACE).</returns>
|
||||
// Token: 0x170008E6 RID: 2278
|
||||
// (get) Token: 0x06002D6D RID: 11629 RVA: 0x00093ACC File Offset: 0x00091CCC
|
||||
public AuditFlags AuditFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
AuditFlags auditFlags = AuditFlags.None;
|
||||
if ((byte)(this.aceflags & AceFlags.SuccessfulAccess) != 0)
|
||||
{
|
||||
auditFlags |= AuditFlags.Success;
|
||||
}
|
||||
if ((byte)(this.aceflags & AceFlags.FailedAccess) != 0)
|
||||
{
|
||||
auditFlags |= AuditFlags.Failure;
|
||||
}
|
||||
return auditFlags;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.GenericAce" /> object. This length should be used before marshaling the ACL into a binary array with the <see cref="M:System.Security.AccessControl.GenericAce.GetBinaryForm" /> method.</summary>
|
||||
/// <returns>The length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.GenericAce" /> object.</returns>
|
||||
// Token: 0x170008E7 RID: 2279
|
||||
// (get) Token: 0x06002D6E RID: 11630
|
||||
public abstract int BinaryLength { get; }
|
||||
|
||||
/// <summary>Gets flags that specify the inheritance properties of this Access Control Entry (ACE).</summary>
|
||||
/// <returns>Flags that specify the inheritance properties of this ACE.</returns>
|
||||
// Token: 0x170008E8 RID: 2280
|
||||
// (get) Token: 0x06002D6F RID: 11631 RVA: 0x00093B08 File Offset: 0x00091D08
|
||||
public InheritanceFlags InheritanceFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.inheritance;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether this Access Control Entry (ACE) is inherited or is set explicitly.</summary>
|
||||
/// <returns>true if this ACE is inherited; otherwise, false.</returns>
|
||||
// Token: 0x170008E9 RID: 2281
|
||||
// (get) Token: 0x06002D70 RID: 11632 RVA: 0x00093B10 File Offset: 0x00091D10
|
||||
[MonoTODO]
|
||||
public bool IsInherited
|
||||
{
|
||||
get
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets flags that specify the inheritance propagation properties of this Access Control Entry (ACE).</summary>
|
||||
/// <returns>Flags that specify the inheritance propagation properties of this ACE.</returns>
|
||||
// Token: 0x170008EA RID: 2282
|
||||
// (get) Token: 0x06002D71 RID: 11633 RVA: 0x00093B14 File Offset: 0x00091D14
|
||||
public PropagationFlags PropagationFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.propagation;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Creates a deep copy of this Access Control Entry (ACE).</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.GenericAce" /> object that this method creates.</returns>
|
||||
// Token: 0x06002D72 RID: 11634 RVA: 0x00093B1C File Offset: 0x00091D1C
|
||||
[MonoTODO]
|
||||
public GenericAce Copy()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Creates a <see cref="T:System.Security.AccessControl.GenericAce" /> object from the specified binary data.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.GenericAce" /> object this method creates.</returns>
|
||||
/// <param name="binaryForm">The binary data from which to create the new <see cref="T:System.Security.AccessControl.GenericAce" /> object.</param>
|
||||
/// <param name="offset">The offset at which to begin unmarshaling.</param>
|
||||
// Token: 0x06002D73 RID: 11635 RVA: 0x00093B24 File Offset: 0x00091D24
|
||||
[MonoTODO]
|
||||
public static GenericAce CreateFromBinaryForm(byte[] binaryForm, int offset)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Determines whether the specified <see cref="T:System.Security.AccessControl.GenericAce" /> object is equal to the current <see cref="T:System.Security.AccessControl.GenericAce" /> object.</summary>
|
||||
/// <returns>true if the specified <see cref="T:System.Security.AccessControl.GenericAce" /> object is equal to the current <see cref="T:System.Security.AccessControl.GenericAce" /> object; otherwise, false.</returns>
|
||||
/// <param name="o">The <see cref="T:System.Security.AccessControl.GenericAce" /> object to compare to the current <see cref="T:System.Security.AccessControl.GenericAce" /> object.</param>
|
||||
// Token: 0x06002D74 RID: 11636 RVA: 0x00093B2C File Offset: 0x00091D2C
|
||||
[MonoTODO]
|
||||
public sealed override bool Equals(object o)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Marshals the contents of the <see cref="T:System.Security.AccessControl.GenericAce" /> object into the specified byte array beginning at the specified offset.</summary>
|
||||
/// <param name="binaryForm">The byte array into which the contents of the <see cref="T:System.Security.AccessControl.GenericAce" /> is marshaled.</param>
|
||||
/// <param name="offset">The offset at which to start marshaling.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="offset" /> is negative or too high to allow the entire <see cref="T:System.Security.AccessControl.GenericAcl" /> to be copied into <paramref name="array" />.</exception>
|
||||
// Token: 0x06002D75 RID: 11637
|
||||
[MonoTODO]
|
||||
public abstract void GetBinaryForm(byte[] binaryForm, int offset);
|
||||
|
||||
/// <summary>Serves as a hash function for the <see cref="T:System.Security.AccessControl.GenericAce" /> class. The <see cref="M:System.Security.AccessControl.GenericAce.GetHashCode" /> method is suitable for use in hashing algorithms and data structures like a hash table.</summary>
|
||||
/// <returns>A hash code for the current <see cref="T:System.Security.AccessControl.GenericAce" /> object.</returns>
|
||||
// Token: 0x06002D76 RID: 11638 RVA: 0x00093B34 File Offset: 0x00091D34
|
||||
[MonoTODO]
|
||||
public sealed override int GetHashCode()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Determines whether the specified <see cref="T:System.Security.AccessControl.GenericAce" /> objects are considered equal.</summary>
|
||||
/// <returns>true if the two <see cref="T:System.Security.AccessControl.GenericAce" /> objects are equal; otherwise, false.</returns>
|
||||
/// <param name="left">The first <see cref="T:System.Security.AccessControl.GenericAce" /> object to compare.</param>
|
||||
/// <param name="right">The second <see cref="T:System.Security.AccessControl.GenericAce" /> to compare.</param>
|
||||
// Token: 0x06002D77 RID: 11639 RVA: 0x00093B3C File Offset: 0x00091D3C
|
||||
[MonoTODO]
|
||||
public static bool operator ==(GenericAce left, GenericAce right)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Determines whether the specified <see cref="T:System.Security.AccessControl.GenericAce" /> objects are considered unequal.</summary>
|
||||
/// <returns>true if the two <see cref="T:System.Security.AccessControl.GenericAce" /> objects are unequal; otherwise, false.</returns>
|
||||
/// <param name="left">The first <see cref="T:System.Security.AccessControl.GenericAce" /> object to compare.</param>
|
||||
/// <param name="right">The second <see cref="T:System.Security.AccessControl.GenericAce" /> to compare.</param>
|
||||
// Token: 0x06002D78 RID: 11640 RVA: 0x00093B44 File Offset: 0x00091D44
|
||||
[MonoTODO]
|
||||
public static bool operator !=(GenericAce left, GenericAce right)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
// Token: 0x040011F8 RID: 4600
|
||||
private InheritanceFlags inheritance;
|
||||
|
||||
// Token: 0x040011F9 RID: 4601
|
||||
private PropagationFlags propagation;
|
||||
|
||||
// Token: 0x040011FA RID: 4602
|
||||
private AceFlags aceflags;
|
||||
|
||||
// Token: 0x040011FB RID: 4603
|
||||
private AceType ace_type;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,123 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents an access control list (ACL) and is the base class for the <see cref="T:System.Security.AccessControl.CommonAcl" />, <see cref="T:System.Security.AccessControl.DiscretionaryAcl" />, <see cref="T:System.Security.AccessControl.RawAcl" />, and <see cref="T:System.Security.AccessControl.SystemAcl" /> classes.</summary>
|
||||
// Token: 0x020004C7 RID: 1223
|
||||
public abstract class GenericAcl : IEnumerable, ICollection
|
||||
{
|
||||
/// <summary>Copies each <see cref="T:System.Security.AccessControl.GenericAce" /> of the current <see cref="T:System.Security.AccessControl.GenericAcl" /> into the specified array.</summary>
|
||||
/// <param name="array">The array into which copies of the <see cref="T:System.Security.AccessControl.GenericAce" /> objects contained by the current <see cref="T:System.Security.AccessControl.GenericAcl" /> are placed.</param>
|
||||
/// <param name="index">The zero-based index of <paramref name="array" /> where the copying begins.</param>
|
||||
// Token: 0x06002D7B RID: 11643 RVA: 0x00093B6C File Offset: 0x00091D6C
|
||||
void ICollection.CopyTo(Array array, int index)
|
||||
{
|
||||
this.CopyTo((GenericAce[])array, index);
|
||||
}
|
||||
|
||||
/// <summary>Returns a new instance of the <see cref="T:System.Security.AccessControl.AceEnumerator" /> class cast as an instance of the <see cref="T:System.Collections.IEnumerator" /> interface.</summary>
|
||||
/// <returns>A new <see cref="T:System.Security.AccessControl.AceEnumerator" /> object, cast as an instance of the <see cref="T:System.Collections.IEnumerator" /> interface.</returns>
|
||||
// Token: 0x06002D7C RID: 11644 RVA: 0x00093B7C File Offset: 0x00091D7C
|
||||
IEnumerator IEnumerable.GetEnumerator()
|
||||
{
|
||||
return this.GetEnumerator();
|
||||
}
|
||||
|
||||
/// <summary>Gets the length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.GenericAcl" /> object. This length should be used before marshaling the ACL into a binary array with the <see cref="M:System.Security.AccessControl.GenericAcl.GetBinaryForm" /> method.</summary>
|
||||
/// <returns>The length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.GenericAcl" /> object.</returns>
|
||||
// Token: 0x170008EB RID: 2283
|
||||
// (get) Token: 0x06002D7D RID: 11645
|
||||
public abstract int BinaryLength { get; }
|
||||
|
||||
/// <summary>Gets the number of access control entries (ACEs) in the current <see cref="T:System.Security.AccessControl.GenericAcl" /> object.</summary>
|
||||
/// <returns>The number of ACEs in the current <see cref="T:System.Security.AccessControl.GenericAcl" /> object.</returns>
|
||||
// Token: 0x170008EC RID: 2284
|
||||
// (get) Token: 0x06002D7E RID: 11646
|
||||
public abstract int Count { get; }
|
||||
|
||||
/// <summary>This property is always set to false. It is implemented only because it is required for the implementation of the <see cref="T:System.Collections.ICollection" /> interface.</summary>
|
||||
/// <returns>Always false.</returns>
|
||||
// Token: 0x170008ED RID: 2285
|
||||
// (get) Token: 0x06002D7F RID: 11647 RVA: 0x00093B84 File Offset: 0x00091D84
|
||||
public bool IsSynchronized
|
||||
{
|
||||
get
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the <see cref="T:System.Security.AccessControl.GenericAce" /> at the specified index.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.GenericAce" /> at the specified index.</returns>
|
||||
/// <param name="index">The zero-based index of the <see cref="T:System.Security.AccessControl.GenericAce" /> to get or set.</param>
|
||||
// Token: 0x170008EE RID: 2286
|
||||
public abstract GenericAce this[int index] { get; set; }
|
||||
|
||||
/// <summary>Gets the revision level of the <see cref="T:System.Security.AccessControl.GenericAcl" />.</summary>
|
||||
/// <returns>A byte value that specifies the revision level of the <see cref="T:System.Security.AccessControl.GenericAcl" />.</returns>
|
||||
// Token: 0x170008EF RID: 2287
|
||||
// (get) Token: 0x06002D82 RID: 11650
|
||||
public abstract byte Revision { get; }
|
||||
|
||||
/// <summary>This property always returns null. It is implemented only because it is required for the implementation of the <see cref="T:System.Collections.ICollection" /> interface.</summary>
|
||||
/// <returns>Always returns null.</returns>
|
||||
// Token: 0x170008F0 RID: 2288
|
||||
// (get) Token: 0x06002D83 RID: 11651 RVA: 0x00093B88 File Offset: 0x00091D88
|
||||
public object SyncRoot
|
||||
{
|
||||
get
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Copies each <see cref="T:System.Security.AccessControl.GenericAce" /> of the current <see cref="T:System.Security.AccessControl.GenericAcl" /> into the specified array.</summary>
|
||||
/// <param name="array">The array into which copies of the <see cref="T:System.Security.AccessControl.GenericAce" /> objects contained by the current <see cref="T:System.Security.AccessControl.GenericAcl" /> are placed.</param>
|
||||
/// <param name="index">The zero-based index of <paramref name="array" /> where the copying begins.</param>
|
||||
// Token: 0x06002D84 RID: 11652 RVA: 0x00093B8C File Offset: 0x00091D8C
|
||||
public void CopyTo(GenericAce[] array, int index)
|
||||
{
|
||||
if (array == null)
|
||||
{
|
||||
throw new ArgumentNullException("array");
|
||||
}
|
||||
if (index < 0 || array.Length - index < this.Count)
|
||||
{
|
||||
throw new ArgumentOutOfRangeException("index", "Index must be non-negative integer and must not exceed array length - count");
|
||||
}
|
||||
for (int i = 0; i < this.Count; i++)
|
||||
{
|
||||
array[i + index] = this[i];
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Marshals the contents of the <see cref="T:System.Security.AccessControl.GenericAcl" /> object into the specified byte array beginning at the specified offset.</summary>
|
||||
/// <param name="binaryForm">The byte array into which the contents of the <see cref="T:System.Security.AccessControl.GenericAcl" /> is marshaled.</param>
|
||||
/// <param name="offset">The offset at which to start marshaling.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="offset" /> is negative or too high to allow the entire <see cref="T:System.Security.AccessControl.GenericAcl" /> to be copied into <paramref name="array" />.</exception>
|
||||
// Token: 0x06002D85 RID: 11653
|
||||
public abstract void GetBinaryForm(byte[] binaryForm, int offset);
|
||||
|
||||
/// <summary>Returns a new instance of the <see cref="T:System.Security.AccessControl.AceEnumerator" /> class.</summary>
|
||||
/// <returns>The <see cref="T:Security.AccessControl.AceEnumerator" /> that this method returns.</returns>
|
||||
// Token: 0x06002D86 RID: 11654 RVA: 0x00093BF4 File Offset: 0x00091DF4
|
||||
public AceEnumerator GetEnumerator()
|
||||
{
|
||||
return new AceEnumerator(this);
|
||||
}
|
||||
|
||||
/// <summary>The revision level of the current <see cref="T:System.Security.AccessControl.GenericAcl" />. This value is returned by the <see cref="P:System.Security.AccessControl.GenericAcl.Revision" /> property for Access Control Lists (ACLs) that are not associated with Directory Services objects.</summary>
|
||||
// Token: 0x040011FC RID: 4604
|
||||
public static readonly byte AclRevision = 2;
|
||||
|
||||
/// <summary>The revision level of the current <see cref="T:System.Security.AccessControl.GenericAcl" />. This value is returned by the <see cref="P:System.Security.AccessControl.GenericAcl.Revision" /> property for Access Control Lists (ACLs) that are associated with Directory Services objects.</summary>
|
||||
// Token: 0x040011FD RID: 4605
|
||||
public static readonly byte AclRevisionDS = 4;
|
||||
|
||||
/// <summary>The maximum allowed binary length of a <see cref="T:System.Security.AccessControl.GenericAcl" /> object.</summary>
|
||||
// Token: 0x040011FE RID: 4606
|
||||
public static readonly int MaxBinaryLength = 65536;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a security descriptor. A security descriptor includes an owner, a primary group, a Discretionary Access Control List (DACL), and a System Access Control List (SACL).</summary>
|
||||
// Token: 0x020004C8 RID: 1224
|
||||
public abstract class GenericSecurityDescriptor
|
||||
{
|
||||
/// <summary>Gets the length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object. This length should be used before marshaling the ACL into a binary array with the <see cref="M:System.Security.AccessControl.GenericSecurityDescriptor.GetBinaryForm" /> method.</summary>
|
||||
/// <returns>The length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x170008F1 RID: 2289
|
||||
// (get) Token: 0x06002D88 RID: 11656 RVA: 0x00093C04 File Offset: 0x00091E04
|
||||
public int BinaryLength
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets values that specify behavior of the <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object.</summary>
|
||||
/// <returns>One or more values of the <see cref="T:System.Security.AccessControl.ControlFlags" /> enumeration combined with a logical OR operation.</returns>
|
||||
// Token: 0x170008F2 RID: 2290
|
||||
// (get) Token: 0x06002D89 RID: 11657
|
||||
public abstract ControlFlags ControlFlags { get; }
|
||||
|
||||
/// <summary>Gets or sets the primary group for this <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object.</summary>
|
||||
/// <returns>The primary group for this <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x170008F3 RID: 2291
|
||||
// (get) Token: 0x06002D8A RID: 11658
|
||||
// (set) Token: 0x06002D8B RID: 11659
|
||||
public abstract SecurityIdentifier Group { get; set; }
|
||||
|
||||
/// <summary>Gets or sets the owner of the object associated with this <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object.</summary>
|
||||
/// <returns>The owner of the object associated with this <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x170008F4 RID: 2292
|
||||
// (get) Token: 0x06002D8C RID: 11660
|
||||
// (set) Token: 0x06002D8D RID: 11661
|
||||
public abstract SecurityIdentifier Owner { get; set; }
|
||||
|
||||
/// <summary>Gets the revision level of the <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object.</summary>
|
||||
/// <returns>A byte value that specifies the revision level of the <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" />.</returns>
|
||||
// Token: 0x170008F5 RID: 2293
|
||||
// (get) Token: 0x06002D8E RID: 11662 RVA: 0x00093C0C File Offset: 0x00091E0C
|
||||
public static byte Revision
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Returns an array of byte values that represents the information contained in this <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object.</summary>
|
||||
/// <param name="binaryForm">The byte array into which the contents of the <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> is marshaled.</param>
|
||||
/// <param name="offset">The offset at which to start marshaling.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="offset" /> is negative or too high to allow the entire <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> to be copied into <paramref name="array" />.</exception>
|
||||
// Token: 0x06002D8F RID: 11663 RVA: 0x00093C14 File Offset: 0x00091E14
|
||||
public void GetBinaryForm(byte[] binaryForm, int offset)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Returns the Security Descriptor Definition Language (SDDL) representation of the specified sections of the security descriptor that this <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object represents.</summary>
|
||||
/// <returns>The SDDL representation of the specified sections of the security descriptor associated with this <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object.</returns>
|
||||
/// <param name="includeSections">Specifies which sections (access rules, audit rules, primary group, owner) of the security descriptor to get.</param>
|
||||
// Token: 0x06002D90 RID: 11664 RVA: 0x00093C1C File Offset: 0x00091E1C
|
||||
public string GetSddlForm(AccessControlSections includeSections)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Returns a boolean value that specifies whether the security descriptor associated with this <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object can be converted to the Security Descriptor Definition Language (SDDL) format.</summary>
|
||||
/// <returns>true if the security descriptor associated with this <see cref="T:System.Security.AccessControl.GenericSecurityDescriptor" /> object can be converted to the Security Descriptor Definition Language (SDDL) format; otherwise, false.</returns>
|
||||
// Token: 0x06002D91 RID: 11665 RVA: 0x00093C24 File Offset: 0x00091E24
|
||||
public static bool IsSddlConversionSupported()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Inheritance flags specify the semantics of inheritance for access control entries (ACEs).</summary>
|
||||
// Token: 0x020004C9 RID: 1225
|
||||
[Flags]
|
||||
public enum InheritanceFlags
|
||||
{
|
||||
/// <summary>The ACE is not inherited by child objects.</summary>
|
||||
// Token: 0x04001200 RID: 4608
|
||||
None = 0,
|
||||
/// <summary>The ACE is inherited by child container objects.</summary>
|
||||
// Token: 0x04001201 RID: 4609
|
||||
ContainerInherit = 1,
|
||||
/// <summary>The ACE is inherited by child leaf objects.</summary>
|
||||
// Token: 0x04001202 RID: 4610
|
||||
ObjectInherit = 2
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Encapsulates all Access Control Entry (ACE) types currently defined by Microsoft Corporation. All <see cref="T:System.Security.AccessControl.KnownAce" /> objects contain a 32-bit access mask and a <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</summary>
|
||||
// Token: 0x020004CA RID: 1226
|
||||
public abstract class KnownAce : GenericAce
|
||||
{
|
||||
// Token: 0x06002D92 RID: 11666 RVA: 0x00093C2C File Offset: 0x00091E2C
|
||||
internal KnownAce(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
|
||||
: base(inheritanceFlags, propagationFlags)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the access mask for this <see cref="T:System.Security.AccessControl.KnownAce" /> object.</summary>
|
||||
/// <returns>The access mask for this <see cref="T:System.Security.AccessControl.KnownAce" /> object.</returns>
|
||||
// Token: 0x170008F6 RID: 2294
|
||||
// (get) Token: 0x06002D93 RID: 11667 RVA: 0x00093C38 File Offset: 0x00091E38
|
||||
// (set) Token: 0x06002D94 RID: 11668 RVA: 0x00093C40 File Offset: 0x00091E40
|
||||
public int AccessMask
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.access_mask;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.access_mask = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the <see cref="T:System.Security.Principal.SecurityIdentifier" /> object associated with this <see cref="T:System.Security.AccessControl.KnownAce" /> object.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.Principal.SecurityIdentifier" /> object associated with this <see cref="T:System.Security.AccessControl.KnownAce" /> object.</returns>
|
||||
// Token: 0x170008F7 RID: 2295
|
||||
// (get) Token: 0x06002D95 RID: 11669 RVA: 0x00093C4C File Offset: 0x00091E4C
|
||||
// (set) Token: 0x06002D96 RID: 11670 RVA: 0x00093C54 File Offset: 0x00091E54
|
||||
public SecurityIdentifier SecurityIdentifier
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.identifier;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.identifier = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x04001203 RID: 4611
|
||||
private int access_mask;
|
||||
|
||||
// Token: 0x04001204 RID: 4612
|
||||
private SecurityIdentifier identifier;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a set of access rights allowed or denied for a user or group. This class cannot be inherited.</summary>
|
||||
// Token: 0x020004CB RID: 1227
|
||||
public sealed class MutexAccessRule : AccessRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.MutexAccessRule" /> class, specifying the user or group the rule applies to, the access rights, and whether the specified access rights are allowed or denied.</summary>
|
||||
/// <param name="identity">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="eventRights">A bitwise combination of <see cref="T:System.Security.AccessControl.MutexRights" /> values specifying the rights allowed or denied.</param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values specifying whether the rights are allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="eventRights" /> specifies an invalid value.-or-<paramref name="type" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identity" /> is null. -or-<paramref name="eventRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" /> nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002D97 RID: 11671 RVA: 0x00093C60 File Offset: 0x00091E60
|
||||
public MutexAccessRule(IdentityReference identity, MutexRights eventRights, AccessControlType type)
|
||||
: base(identity, 0, false, InheritanceFlags.None, PropagationFlags.None, type)
|
||||
{
|
||||
this.rights = eventRights;
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.MutexAccessRule" /> 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.</summary>
|
||||
/// <param name="identity">The name of the user or group the rule applies to.</param>
|
||||
/// <param name="eventRights">A bitwise combination of <see cref="T:System.Security.AccessControl.MutexRights" /> values specifying the rights allowed or denied.</param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values specifying whether the rights are allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="eventRights" /> specifies an invalid value.-or-<paramref name="type" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="eventRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is null.-or-<paramref name="identity" /> is a zero-length string.-or-<paramref name="identity" /> is longer than 512 characters.</exception>
|
||||
// Token: 0x06002D98 RID: 11672 RVA: 0x00093C78 File Offset: 0x00091E78
|
||||
public MutexAccessRule(string identity, MutexRights eventRights, AccessControlType type)
|
||||
: this(new SecurityIdentifier(identity), eventRights, type)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the rights allowed or denied by the access rule.</summary>
|
||||
/// <returns>A bitwise combination of <see cref="T:System.Security.AccessControl.MutexRights" /> values indicating the rights allowed or denied by the access rule.</returns>
|
||||
// Token: 0x170008F8 RID: 2296
|
||||
// (get) Token: 0x06002D99 RID: 11673 RVA: 0x00093C88 File Offset: 0x00091E88
|
||||
public MutexRights MutexRights
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.rights;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x04001205 RID: 4613
|
||||
private MutexRights rights;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a set of access rights to be audited for a user or group. This class cannot be inherited.</summary>
|
||||
// Token: 0x020004CC RID: 1228
|
||||
public sealed class MutexAuditRule : AuditRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.MutexAuditRule" /> class, specifying the user or group to audit, the rights to audit, and whether to audit success, failure, or both.</summary>
|
||||
/// <param name="identity">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="eventRights">A bitwise combination of <see cref="T:System.Security.AccessControl.MutexRights" /> values specifying the kinds of access to audit.</param>
|
||||
/// <param name="flags">A bitwise combination of <see cref="T:System.Security.AccessControl.AuditFlags" /> values specifying whether to audit success, failure, or both.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="eventRights" /> specifies an invalid value.-or-<paramref name="flags" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identity" /> is null. -or-<paramref name="eventRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" /> nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be translated to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002D9A RID: 11674 RVA: 0x00093C90 File Offset: 0x00091E90
|
||||
public MutexAuditRule(IdentityReference identity, MutexRights eventRights, AuditFlags flags)
|
||||
: base(identity, 0, false, InheritanceFlags.None, PropagationFlags.None, flags)
|
||||
{
|
||||
this.rights = eventRights;
|
||||
}
|
||||
|
||||
/// <summary>Gets the access rights affected by the audit rule.</summary>
|
||||
/// <returns>A bitwise combination of <see cref="T:System.Security.AccessControl.MutexRights" /> values that indicates the rights affected by the audit rule.</returns>
|
||||
// Token: 0x170008F9 RID: 2297
|
||||
// (get) Token: 0x06002D9B RID: 11675 RVA: 0x00093CA8 File Offset: 0x00091EA8
|
||||
public MutexRights MutexRights
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.rights;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x04001206 RID: 4614
|
||||
private MutexRights rights;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the access control rights that can be applied to named system mutex objects.</summary>
|
||||
// Token: 0x020004CD RID: 1229
|
||||
[Flags]
|
||||
public enum MutexRights
|
||||
{
|
||||
/// <summary>The right to release a named mutex.</summary>
|
||||
// Token: 0x04001208 RID: 4616
|
||||
Modify = 1,
|
||||
/// <summary>The right to delete a named mutex.</summary>
|
||||
// Token: 0x04001209 RID: 4617
|
||||
Delete = 65536,
|
||||
/// <summary>The right to open and copy the access rules and audit rules for a named mutex.</summary>
|
||||
// Token: 0x0400120A RID: 4618
|
||||
ReadPermissions = 131072,
|
||||
/// <summary>The right to change the security and audit rules associated with a named mutex.</summary>
|
||||
// Token: 0x0400120B RID: 4619
|
||||
ChangePermissions = 262144,
|
||||
/// <summary>The right to change the owner of a named mutex.</summary>
|
||||
// Token: 0x0400120C RID: 4620
|
||||
TakeOwnership = 524288,
|
||||
/// <summary>The right to wait on a named mutex.</summary>
|
||||
// Token: 0x0400120D RID: 4621
|
||||
Synchronize = 1048576,
|
||||
/// <summary>The right to exert full control over a named mutex, and to modify its access rules and audit rules.</summary>
|
||||
// Token: 0x0400120E RID: 4622
|
||||
FullControl = 2031617
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,226 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents the Windows access control security for a named mutex. This class cannot be inherited. </summary>
|
||||
// Token: 0x020004CE RID: 1230
|
||||
public sealed class MutexSecurity : NativeObjectSecurity
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.MutexSecurity" /> class with default values.</summary>
|
||||
/// <exception cref="T:System.NotSupportedException">This class is not supported on Windows 98 or Windows Millennium Edition.</exception>
|
||||
// Token: 0x06002D9C RID: 11676 RVA: 0x00093CB0 File Offset: 0x00091EB0
|
||||
public MutexSecurity()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.MutexSecurity" /> class with the specified sections of the access control security rules from the system mutex with the specified name.</summary>
|
||||
/// <param name="name">The name of the system mutex whose access control security rules are to be retrieved.</param>
|
||||
/// <param name="includeSections">A combination of <see cref="T:System.Security.AccessControl.AccessControlSections" /> flags specifying the sections to retrieve.</param>
|
||||
/// <exception cref="T:System.IO.FileNotFoundException">There is no system object with the specified name.</exception>
|
||||
/// <exception cref="T:System.NotSupportedException">This class is not supported on Windows 98 or Windows Millennium Edition.</exception>
|
||||
// Token: 0x06002D9D RID: 11677 RVA: 0x00093CB8 File Offset: 0x00091EB8
|
||||
public MutexSecurity(string name, AccessControlSections includeSections)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the enumeration that the <see cref="T:System.Security.AccessControl.MutexSecurity" /> class uses to represent access rights.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.MutexRights" /> enumeration.</returns>
|
||||
// Token: 0x170008FA RID: 2298
|
||||
// (get) Token: 0x06002D9E RID: 11678 RVA: 0x00093CC0 File Offset: 0x00091EC0
|
||||
public override Type AccessRightType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(MutexRights);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the type that the <see cref="T:System.Security.AccessControl.MutexSecurity" /> class uses to represent access rules.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.MutexAccessRule" /> class.</returns>
|
||||
// Token: 0x170008FB RID: 2299
|
||||
// (get) Token: 0x06002D9F RID: 11679 RVA: 0x00093CCC File Offset: 0x00091ECC
|
||||
public override Type AccessRuleType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(MutexAccessRule);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the type that the <see cref="T:System.Security.AccessControl.MutexSecurity" /> class uses to represent audit rules.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.MutexAuditRule" /> class.</returns>
|
||||
// Token: 0x170008FC RID: 2300
|
||||
// (get) Token: 0x06002DA0 RID: 11680 RVA: 0x00093CD8 File Offset: 0x00091ED8
|
||||
public override Type AuditRuleType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(MutexAuditRule);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Creates a new access control rule for the specified user, with the specified access rights, access control, and flags.</summary>
|
||||
/// <returns>A <see cref="T:System.Security.AccessControl.MutexAccessRule" /> object representing the specified rights for the specified user.</returns>
|
||||
/// <param name="identityReference">An <see cref="T:System.Security.Principal.IdentityReference" /> that identifies the user or group the rule applies to.</param>
|
||||
/// <param name="accessMask">A bitwise combination of <see cref="T:System.Security.AccessControl.MutexRights" /> values specifying the access rights to allow or deny, cast to an integer.</param>
|
||||
/// <param name="isInherited">Meaningless for named mutexes, because they have no hierarchy.</param>
|
||||
/// <param name="inheritanceFlags">Meaningless for named mutexes, because they have no hierarchy.</param>
|
||||
/// <param name="propagationFlags">Meaningless for named mutexes, because they have no hierarchy.</param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values specifying whether the rights are allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="accessMask" />, <paramref name="inheritanceFlags" />, <paramref name="propagationFlags" />, or <paramref name="type" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identityReference" /> is null. -or-<paramref name="accessMask" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identityReference" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" />, nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002DA1 RID: 11681 RVA: 0x00093CE4 File Offset: 0x00091EE4
|
||||
public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
|
||||
{
|
||||
return new MutexAccessRule(identityReference, (MutexRights)accessMask, type);
|
||||
}
|
||||
|
||||
/// <summary>Searches for a matching access control rule with which the new rule can be merged. If none are found, adds the new rule.</summary>
|
||||
/// <param name="rule">The access control rule to add.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
/// <exception cref="T:System.Security.Principal.IdentityNotMappedException">
|
||||
/// <paramref name="rule " />cannot be mapped to a known identity.</exception>
|
||||
// Token: 0x06002DA2 RID: 11682 RVA: 0x00093CF0 File Offset: 0x00091EF0
|
||||
[MonoTODO]
|
||||
public void AddAccessRule(MutexAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an access control rule with the same user and <see cref="T:System.Security.AccessControl.AccessControlType" /> (allow or deny) as the specified rule, and with compatible inheritance and propagation flags; if such a rule is found, the rights contained in the specified access rule are removed from it.</summary>
|
||||
/// <returns>true if a compatible rule is found; otherwise false.</returns>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.MutexAccessRule" /> that specifies the user and <see cref="T:System.Security.AccessControl.AccessControlType" /> to search for, and a set of inheritance and propagation flags that a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002DA3 RID: 11683 RVA: 0x00093CF8 File Offset: 0x00091EF8
|
||||
[MonoTODO]
|
||||
public bool RemoveAccessRule(MutexAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for all access control rules with the same user and <see cref="T:System.Security.AccessControl.AccessControlType" /> (allow or deny) as the specified rule and, if found, removes them.</summary>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.MutexAccessRule" /> that specifies the user and <see cref="T:System.Security.AccessControl.AccessControlType" /> to search for. Any rights specified by this rule are ignored.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002DA4 RID: 11684 RVA: 0x00093D00 File Offset: 0x00091F00
|
||||
[MonoTODO]
|
||||
public void RemoveAccessRuleAll(MutexAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an access control rule that exactly matches the specified rule and, if found, removes it.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.MutexAccessRule" /> to remove.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002DA5 RID: 11685 RVA: 0x00093D08 File Offset: 0x00091F08
|
||||
[MonoTODO]
|
||||
public void RemoveAccessRuleSpecific(MutexAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access control rules with the same user as the specified rule, regardless of <see cref="T:System.Security.AccessControl.AccessControlType" />, and then adds the specified rule.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.MutexAccessRule" /> to add. The user specified by this rule determines the rules to remove before this rule is added.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002DA6 RID: 11686 RVA: 0x00093D10 File Offset: 0x00091F10
|
||||
[MonoTODO]
|
||||
public void ResetAccessRule(MutexAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access control rules with the same user and <see cref="T:System.Security.AccessControl.AccessControlType" /> (allow or deny) as the specified rule, and then adds the specified rule.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.MutexAccessRule" /> to add. The user and <see cref="T:System.Security.AccessControl.AccessControlType" /> of this rule determine the rules to remove before this rule is added.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002DA7 RID: 11687 RVA: 0x00093D18 File Offset: 0x00091F18
|
||||
[MonoTODO]
|
||||
public void SetAccessRule(MutexAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Creates a new audit rule, specifying the user the rule applies to, the access rights to audit, and the outcome that triggers the audit rule.</summary>
|
||||
/// <returns>A <see cref="T:System.Security.AccessControl.MutexAuditRule" /> object representing the specified audit rule for the specified user. The return type of the method is the base class, <see cref="T:System.Security.AccessControl.AuditRule" />, but the return value can be cast safely to the derived class.</returns>
|
||||
/// <param name="identityReference">An <see cref="T:System.Security.Principal.IdentityReference" /> that identifies the user or group the rule applies to.</param>
|
||||
/// <param name="accessMask">A bitwise combination of <see cref="T:System.Security.AccessControl.MutexRights" /> values specifying the access rights to audit, cast to an integer.</param>
|
||||
/// <param name="isInherited">Meaningless for named wait handles, because they have no hierarchy.</param>
|
||||
/// <param name="inheritanceFlags">Meaningless for named wait handles, because they have no hierarchy.</param>
|
||||
/// <param name="propagationFlags">Meaningless for named wait handles, because they have no hierarchy.</param>
|
||||
/// <param name="flags">A bitwise combination of <see cref="T:System.Security.AccessControl.AuditFlags" /> values that specify whether to audit successful access, failed access, or both.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="accessMask" />, <paramref name="inheritanceFlags" />, <paramref name="propagationFlags" />, or <paramref name="flags" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identityReference" /> is null. -or-<paramref name="accessMask" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identityReference" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" />, nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002DA8 RID: 11688 RVA: 0x00093D20 File Offset: 0x00091F20
|
||||
public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags)
|
||||
{
|
||||
return new MutexAuditRule(identityReference, (MutexRights)accessMask, flags);
|
||||
}
|
||||
|
||||
/// <summary>Searches for an audit rule with which the new rule can be merged. If none are found, adds the new rule.</summary>
|
||||
/// <param name="rule">The audit rule to add. The user specified by this rule determines the search.</param>
|
||||
// Token: 0x06002DA9 RID: 11689 RVA: 0x00093D2C File Offset: 0x00091F2C
|
||||
[MonoTODO]
|
||||
public void AddAuditRule(MutexAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an audit control rule with the same user as the specified rule, and with compatible inheritance and propagation flags; if a compatible rule is found, the rights contained in the specified rule are removed from it.</summary>
|
||||
/// <returns>true if a compatible rule is found; otherwise, false.</returns>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.MutexAuditRule" /> that specifies the user to search for, and a set of inheritance and propagation flags that a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002DAA RID: 11690 RVA: 0x00093D34 File Offset: 0x00091F34
|
||||
[MonoTODO]
|
||||
public bool RemoveAuditRule(MutexAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for all audit rules with the same user as the specified rule and, if found, removes them.</summary>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.MutexAuditRule" /> that specifies the user to search for. Any rights specified by this rule are ignored.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002DAB RID: 11691 RVA: 0x00093D3C File Offset: 0x00091F3C
|
||||
[MonoTODO]
|
||||
public void RemoveAuditRuleAll(MutexAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an audit rule that exactly matches the specified rule and, if found, removes it.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.MutexAuditRule" /> to be removed.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002DAC RID: 11692 RVA: 0x00093D44 File Offset: 0x00091F44
|
||||
[MonoTODO]
|
||||
public void RemoveAuditRuleSpecific(MutexAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules with the same user as the specified rule, regardless of the <see cref="T:System.Security.AccessControl.AuditFlags" /> value, and then adds the specified rule.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.MutexAuditRule" /> to add. The user specified by this rule determines the rules to remove before this rule is added.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002DAD RID: 11693 RVA: 0x00093D4C File Offset: 0x00091F4C
|
||||
[MonoTODO]
|
||||
public void SetAuditRule(MutexAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,136 @@
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Provides the ability to control access to native objects without direct manipulation of Access Control Lists (ACLs). Native object types are defined by the <see cref="T:System.Security.AccessControl.ResourceType" /> enumeration.</summary>
|
||||
// Token: 0x020004CF RID: 1231
|
||||
public abstract class NativeObjectSecurity : CommonObjectSecurity
|
||||
{
|
||||
// Token: 0x06002DAE RID: 11694 RVA: 0x00093D54 File Offset: 0x00091F54
|
||||
internal NativeObjectSecurity()
|
||||
: base(false)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> class with the specified values.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is a container object.</param>
|
||||
/// <param name="resourceType">The type of securable object with which the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
// Token: 0x06002DAF RID: 11695 RVA: 0x00093D60 File Offset: 0x00091F60
|
||||
protected NativeObjectSecurity(bool isContainer, ResourceType resourceType)
|
||||
: base(isContainer)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> class by using the specified values.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is a container object.</param>
|
||||
/// <param name="resourceType">The type of securable object with which the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="exceptionFromErrorCode">A delegate implemented by integrators that provides custom exceptions. </param>
|
||||
/// <param name="exceptionContext">An object that contains contextual information about the source or destination of the exception.</param>
|
||||
// Token: 0x06002DB0 RID: 11696 RVA: 0x00093D6C File Offset: 0x00091F6C
|
||||
protected NativeObjectSecurity(bool isContainer, ResourceType resourceType, NativeObjectSecurity.ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext)
|
||||
: this(isContainer, resourceType)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> class with the specified values. We recommend that the values of the <paramref name="includeSections" /> parameters passed to the constructor and persist methods be identical. For more information, see Remarks.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is a container object.</param>
|
||||
/// <param name="resourceType">The type of securable object with which the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="handle">The handle of the securable object with which the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object.</param>
|
||||
// Token: 0x06002DB1 RID: 11697 RVA: 0x00093D78 File Offset: 0x00091F78
|
||||
protected NativeObjectSecurity(bool isContainer, ResourceType resourceType, SafeHandle handle, AccessControlSections includeSections)
|
||||
: this(isContainer, resourceType)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> class with the specified values. We recommend that the values of the <paramref name="includeSections" /> parameters passed to the constructor and persist methods be identical. For more information, see Remarks.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.NativObjectSecurity" /> object is a container object.</param>
|
||||
/// <param name="resourceType">The type of securable object with which the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="name">The name of the securable object with which the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object.</param>
|
||||
// Token: 0x06002DB2 RID: 11698 RVA: 0x00093D84 File Offset: 0x00091F84
|
||||
protected NativeObjectSecurity(bool isContainer, ResourceType resourceType, string name, AccessControlSections includeSections)
|
||||
: this(isContainer, resourceType)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> class with the specified values. We recommend that the values of the <paramref name="includeSections" /> parameters passed to the constructor and persist methods be identical. For more information, see Remarks.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is a container object.</param>
|
||||
/// <param name="resourceType">The type of securable object with which the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="handle">The handle of the securable object with which the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object.</param>
|
||||
/// <param name="exceptionFromErrorCode">A delegate implemented by integrators that provides custom exceptions. </param>
|
||||
/// <param name="exceptionContext">An object that contains contextual information about the source or destination of the exception.</param>
|
||||
// Token: 0x06002DB3 RID: 11699 RVA: 0x00093D90 File Offset: 0x00091F90
|
||||
protected NativeObjectSecurity(bool isContainer, ResourceType resourceType, SafeHandle handle, AccessControlSections includeSections, NativeObjectSecurity.ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext)
|
||||
: this(isContainer, resourceType, handle, includeSections)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> class with the specified values. We recommend that the values of the <paramref name="includeSections" /> parameters passed to the constructor and persist methods be identical. For more information, see Remarks.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is a container object.</param>
|
||||
/// <param name="resourceType">The type of securable object with which the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="name">The name of the securable object with which the new <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object.</param>
|
||||
/// <param name="exceptionFromErrorCode">A delegate implemented by integrators that provides custom exceptions. </param>
|
||||
/// <param name="exceptionContext">An object that contains contextual information about the source or destination of the exception.</param>
|
||||
// Token: 0x06002DB4 RID: 11700 RVA: 0x00093DA0 File Offset: 0x00091FA0
|
||||
protected NativeObjectSecurity(bool isContainer, ResourceType resourceType, string name, AccessControlSections includeSections, NativeObjectSecurity.ExceptionFromErrorCode exceptionFromErrorCode, object exceptionContext)
|
||||
: this(isContainer, resourceType, name, includeSections)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Saves the specified sections of the security descriptor associated with this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object to permanent storage. We recommend that the values of the <paramref name="includeSections" /> parameters passed to the constructor and persist methods be identical. For more information, see Remarks.</summary>
|
||||
/// <param name="handle">The handle of the securable object with which this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.</param>
|
||||
/// <exception cref="T:System.IO.FileNotFoundException">The securable object with which this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated is either a directory or a file, and that directory or file could not be found.</exception>
|
||||
// Token: 0x06002DB5 RID: 11701 RVA: 0x00093DB0 File Offset: 0x00091FB0
|
||||
protected sealed override void Persist(SafeHandle handle, AccessControlSections includeSections)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Saves the specified sections of the security descriptor associated with this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object to permanent storage. We recommend that the values of the <paramref name="includeSections" /> parameters passed to the constructor and persist methods be identical. For more information, see Remarks.</summary>
|
||||
/// <param name="name">The name of the securable object with which this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.</param>
|
||||
/// <exception cref="T:System.IO.FileNotFoundException">The securable object with which this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated is either a directory or a file, and that directory or file could not be found.</exception>
|
||||
// Token: 0x06002DB6 RID: 11702 RVA: 0x00093DB8 File Offset: 0x00091FB8
|
||||
protected sealed override void Persist(string name, AccessControlSections includeSections)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Saves the specified sections of the security descriptor associated with this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object to permanent storage. We recommend that the values of the <paramref name="includeSections" /> parameters passed to the constructor and persist methods be identical. For more information, see Remarks.</summary>
|
||||
/// <param name="handle">The handle of the securable object with which this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.</param>
|
||||
/// <param name="exceptionContext">An object that contains contextual information about the source or destination of the exception.</param>
|
||||
/// <exception cref="T:System.IO.FileNotFoundException">The securable object with which this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated is either a directory or a file, and that directory or file could not be found.</exception>
|
||||
// Token: 0x06002DB7 RID: 11703 RVA: 0x00093DC0 File Offset: 0x00091FC0
|
||||
protected void Persist(SafeHandle handle, AccessControlSections includeSections, object exceptionContext)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Saves the specified sections of the security descriptor associated with this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object to permanent storage. We recommend that the values of the <paramref name="includeSections" /> parameters passed to the constructor and persist methods be identical. For more information, see Remarks.</summary>
|
||||
/// <param name="name">The name of the securable object with which this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.</param>
|
||||
/// <param name="exceptionContext">An object that contains contextual information about the source or destination of the exception.</param>
|
||||
/// <exception cref="T:System.IO.FileNotFoundException">The securable object with which this <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated is either a directory or a file, and that directory or file could not be found.</exception>
|
||||
// Token: 0x06002DB8 RID: 11704 RVA: 0x00093DC8 File Offset: 0x00091FC8
|
||||
protected void Persist(string name, AccessControlSections includeSections, object exceptionContext)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Provides a way for integrators to map numeric error codes to specific exceptions that they create.</summary>
|
||||
/// <returns>The <see cref="T:System.Exception" /> this delegate creates.</returns>
|
||||
/// <param name="errorCode">The numeric error code.</param>
|
||||
/// <param name="name">The name of the securable object with which the <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="handle">The handle of the securable object with which the <see cref="T:System.Security.AccessControl.NativeObjectSecurity" /> object is associated.</param>
|
||||
/// <param name="context">An object that contains contextual information about the source or destination of the exception.</param>
|
||||
// Token: 0x020006D1 RID: 1745
|
||||
// (Invoke) Token: 0x060041CC RID: 16844
|
||||
protected internal delegate Exception ExceptionFromErrorCode(int errorCode, string name, SafeHandle handle, object context);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a combination of a user's identity, an access mask, and an access control type (allow or deny). An <see cref="T:System.Security.AccessControl.ObjectAccessRule" /> object also contains information about the type of object to which the rule applies, the type of child object that can inherit the rule, how the rule is inherited by child objects, and how that inheritance is propagated.</summary>
|
||||
// Token: 0x020004D0 RID: 1232
|
||||
public abstract class ObjectAccessRule : AccessRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.ObjectAccessRule" /> class with the specified values.</summary>
|
||||
/// <param name="identity">The identity to which the access rule applies. It must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="accessMask">The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.</param>
|
||||
/// <param name="isInherited">true if this rule is inherited from a parent container.</param>
|
||||
/// <param name="inheritanceFlags">Specifies the inheritance properties of the access rule.</param>
|
||||
/// <param name="propagationFlags">Specifies whether inherited access rules are automatically propagated. The propagation flags are ignored if <paramref name="inheritanceFlags" /> is set to <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="objectType">The type of object to which the rule applies.</param>
|
||||
/// <param name="inheritedObjectType">The type of child object that can inherit the rule.</param>
|
||||
/// <param name="type">Specifies whether this rule allows or denies access.</param>
|
||||
/// <exception cref="T:System.ArgumentException">The value of the <paramref name="identity" /> parameter cannot be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />, or the <paramref name="type" /> parameter contains an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">The value of the <paramref name="accessMask" /> parameter is 0, or the <paramref name="inheritanceFlags" /> or <paramref name="propagationFlags" /> parameters contain unrecognized flag values.</exception>
|
||||
// Token: 0x06002DB9 RID: 11705 RVA: 0x00093DD0 File Offset: 0x00091FD0
|
||||
protected ObjectAccessRule(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, Guid objectType, Guid inheritedObjectType, AccessControlType type)
|
||||
: base(identity, accessMask, isInherited, inheritanceFlags, propagationFlags, type)
|
||||
{
|
||||
this.object_type = objectType;
|
||||
this.inherited_object_type = inheritedObjectType;
|
||||
}
|
||||
|
||||
/// <summary>Gets the type of child object that can inherit the <see cref="System.Security.AccessControl.ObjectAccessRule" /> object.</summary>
|
||||
/// <returns>The type of child object that can inherit the <see cref="System.Security.AccessControl.ObjectAccessRule" /> object.</returns>
|
||||
// Token: 0x170008FD RID: 2301
|
||||
// (get) Token: 0x06002DBA RID: 11706 RVA: 0x00093DF4 File Offset: 0x00091FF4
|
||||
public Guid InheritedObjectType
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.inherited_object_type;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets flags that specify if the <see cref="P:System.Security.AccessControl.ObjectAccessRule.ObjectType" /> and <see cref="P:System.Security.AccessControl.ObjectAccessRule.InheritedObjectType" /> properties of the <see cref="System.Security.AccessControl.ObjectAccessRule" /> object contain valid values.</summary>
|
||||
/// <returns>
|
||||
/// <see cref="F:System.Security.AccessControl.ObjectAceFlags.ObjectAceTypePresent" /> specifies that the <see cref="P:System.Security.AccessControl.ObjectAccessRule.ObjectType" /> property contains a valid value. <see cref="F:System.Security.AccessControl.ObjectAceFlags.InheritedObjectAceTypePresent" /> specifies that the <see cref="P:System.Security.AccessControl.ObjectAccessRule.InheritedObjectType" /> property contains a valid value. These values can be combined with a logical OR.</returns>
|
||||
// Token: 0x170008FE RID: 2302
|
||||
// (get) Token: 0x06002DBB RID: 11707 RVA: 0x00093DFC File Offset: 0x00091FFC
|
||||
public ObjectAceFlags ObjectFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
ObjectAceFlags objectAceFlags = ObjectAceFlags.None;
|
||||
if (this.object_type != Guid.Empty)
|
||||
{
|
||||
objectAceFlags |= ObjectAceFlags.ObjectAceTypePresent;
|
||||
}
|
||||
if (this.inherited_object_type != Guid.Empty)
|
||||
{
|
||||
objectAceFlags |= ObjectAceFlags.InheritedObjectAceTypePresent;
|
||||
}
|
||||
return objectAceFlags;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the type of object to which the <see cref="System.Security.AccessControl.ObjectAccessRule" /> applies.</summary>
|
||||
/// <returns>The type of object to which the <see cref="System.Security.AccessControl.ObjectAccessRule" /> applies.</returns>
|
||||
// Token: 0x170008FF RID: 2303
|
||||
// (get) Token: 0x06002DBC RID: 11708 RVA: 0x00093E40 File Offset: 0x00092040
|
||||
public Guid ObjectType
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.object_type;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0400120F RID: 4623
|
||||
private Guid object_type;
|
||||
|
||||
// Token: 0x04001210 RID: 4624
|
||||
private Guid inherited_object_type;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,127 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Controls access to Directory Services objects. This class represents an Access Control Entry (ACE) associated with a directory object.</summary>
|
||||
// Token: 0x020004D1 RID: 1233
|
||||
public sealed class ObjectAce : QualifiedAce
|
||||
{
|
||||
/// <summary>Initiates a new instance of the <see cref="T:System.Security.AccessControl.ObjectAce" /> class.</summary>
|
||||
/// <param name="aceFlags">The inheritance, inheritance propagation, and auditing conditions for the new Access Control Entry (ACE).</param>
|
||||
/// <param name="qualifier">The use of the new ACE.</param>
|
||||
/// <param name="accessMask">The access mask for the ACE.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> associated with the new ACE.</param>
|
||||
/// <param name="flags">Whether the <paramref name="type" /> and <paramref name="inheritedType" /> parameters contain valid object GUIDs.</param>
|
||||
/// <param name="type">A GUID that identifies the object type to which the new ACE applies.</param>
|
||||
/// <param name="inheritedType">A GUID that identifies the object type that can inherit the new ACE.</param>
|
||||
/// <param name="isCallback">true if the new ACE is a callback type ACE.</param>
|
||||
/// <param name="opaque">Opaque data associated with the new ACE. This is allowed only for callback ACE types. The length of this array must not be greater than the return value of the <see cref="M:System.Security.AccessControl.ObjectAceMaxOpaqueLength" /> method.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">The qualifier parameter contains an invalid value or the length of the value of the opaque parameter is greater than the return value of the <see cref="M:System.Security.AccessControl.ObjectAceMaxOpaqueLength" /> method.</exception>
|
||||
// Token: 0x06002DBD RID: 11709 RVA: 0x00093E48 File Offset: 0x00092048
|
||||
public ObjectAce(AceFlags aceFlags, AceQualifier qualifier, int accessMask, SecurityIdentifier sid, ObjectAceFlags flags, Guid type, Guid inheritedType, bool isCallback, byte[] opaque)
|
||||
: base(InheritanceFlags.None, PropagationFlags.None, qualifier, isCallback, opaque)
|
||||
{
|
||||
base.AceFlags = aceFlags;
|
||||
base.SecurityIdentifier = sid;
|
||||
this.object_ace_flags = flags;
|
||||
this.object_ace_type = type;
|
||||
this.inherited_object_type = inheritedType;
|
||||
}
|
||||
|
||||
/// <summary>Gets the length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.ObjectAce" /> object. This length should be used before marshaling the ACL into a binary array with the <see cref="M:System.Security.AccessControl.ObjectAce.GetBinaryForm" /> method.</summary>
|
||||
/// <returns>The length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.ObjectAce" /> object.</returns>
|
||||
// Token: 0x17000900 RID: 2304
|
||||
// (get) Token: 0x06002DBE RID: 11710 RVA: 0x00093E8C File Offset: 0x0009208C
|
||||
[MonoTODO]
|
||||
public override int BinaryLength
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the GUID of the object type that can inherit the Access Control Entry (ACE) that this <see cref="T:System.Security.AccessControl.ObjectAce" /> object represents.</summary>
|
||||
/// <returns>The GUID of the object type that can inherit the Access Control Entry (ACE) that this <see cref="T:System.Security.AccessControl.ObjectAce" /> object represents.</returns>
|
||||
// Token: 0x17000901 RID: 2305
|
||||
// (get) Token: 0x06002DBF RID: 11711 RVA: 0x00093E94 File Offset: 0x00092094
|
||||
// (set) Token: 0x06002DC0 RID: 11712 RVA: 0x00093E9C File Offset: 0x0009209C
|
||||
public Guid InheritedObjectAceType
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.inherited_object_type;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.inherited_object_type = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets flags that specify whether the <see cref="P:System.Security.AccessControl.ObjectAce.ObjectAceType" /> and <see cref="P:System.Security.AccessControl.ObjectAce.InheritedObjectAceType" /> properties contain values that identify valid object types.</summary>
|
||||
/// <returns>On or more members of the <see cref="T:System.Security.AccessControl.ObjectAceFlags" /> enumeration combined with a logical OR operation.</returns>
|
||||
// Token: 0x17000902 RID: 2306
|
||||
// (get) Token: 0x06002DC1 RID: 11713 RVA: 0x00093EA8 File Offset: 0x000920A8
|
||||
// (set) Token: 0x06002DC2 RID: 11714 RVA: 0x00093EB0 File Offset: 0x000920B0
|
||||
public ObjectAceFlags ObjectAceFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.object_ace_flags;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.object_ace_flags = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the GUID of the object type associated with this <see cref="T:System.Security.AccessControl.ObjectAce" /> object.</summary>
|
||||
/// <returns>The GUID of the object type associated with this <see cref="T:System.Security.AccessControl.ObjectAce" /> object.</returns>
|
||||
// Token: 0x17000903 RID: 2307
|
||||
// (get) Token: 0x06002DC3 RID: 11715 RVA: 0x00093EBC File Offset: 0x000920BC
|
||||
// (set) Token: 0x06002DC4 RID: 11716 RVA: 0x00093EC4 File Offset: 0x000920C4
|
||||
public Guid ObjectAceType
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.object_ace_type;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.object_ace_type = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Marshals the contents of the <see cref="T:System.Security.AccessControl.ObjectAce" /> object into the specified byte array beginning at the specified offset.</summary>
|
||||
/// <param name="binaryForm">The byte array into which the contents of the <see cref="T:System.Security.AccessControl. ObjectAce" /> is marshaled.</param>
|
||||
/// <param name="offset">The offset at which to start marshaling.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="offset" /> is negative or too high to allow the entire <see cref="T:System.Security.AccessControl.ObjectAce" /> to be copied into <paramref name="array" />.</exception>
|
||||
// Token: 0x06002DC5 RID: 11717 RVA: 0x00093ED0 File Offset: 0x000920D0
|
||||
[MonoTODO]
|
||||
public override void GetBinaryForm(byte[] binaryForm, int offset)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Returns the maximum allowed length, in bytes, of an opaque data BLOB for callback Access Control Entries (ACEs).</summary>
|
||||
/// <returns>The maximum allowed length, in bytes, of an opaque data BLOB for callback Access Control Entries (ACEs).</returns>
|
||||
/// <param name="isCallback">True if the <see cref="T:System.Security.AccessControl.ObjectAce" /> is a callback ACE type.</param>
|
||||
// Token: 0x06002DC6 RID: 11718 RVA: 0x00093ED8 File Offset: 0x000920D8
|
||||
[MonoTODO]
|
||||
public static int MaxOpaqueLength(bool isCallback)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
// Token: 0x04001211 RID: 4625
|
||||
private Guid object_ace_type;
|
||||
|
||||
// Token: 0x04001212 RID: 4626
|
||||
private Guid inherited_object_type;
|
||||
|
||||
// Token: 0x04001213 RID: 4627
|
||||
private ObjectAceFlags object_ace_flags;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the presence of object types for Access Control Entries (ACEs).</summary>
|
||||
// Token: 0x020004D2 RID: 1234
|
||||
[Flags]
|
||||
public enum ObjectAceFlags
|
||||
{
|
||||
/// <summary>No object types are present.</summary>
|
||||
// Token: 0x04001215 RID: 4629
|
||||
None = 0,
|
||||
/// <summary>The type of object that is associated with the ACE is present.</summary>
|
||||
// Token: 0x04001216 RID: 4630
|
||||
ObjectAceTypePresent = 1,
|
||||
/// <summary>The type of object that can inherit the ACE.</summary>
|
||||
// Token: 0x04001217 RID: 4631
|
||||
InheritedObjectAceTypePresent = 2
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a combination of a user's identity, an access mask, and audit conditions. An <see cref="T:System.Security.AccessControl.ObjectAuditRule" /> object also contains information about the type of object to which the rule applies, the type of child object that can inherit the rule, how the rule is inherited by child objects, and how that inheritance is propagated.</summary>
|
||||
// Token: 0x020004D3 RID: 1235
|
||||
public abstract class ObjectAuditRule : AuditRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.ObjectAuditRule" /> class.</summary>
|
||||
/// <param name="identity">The identity to which the access rule applies. It must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="accessMask">The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.</param>
|
||||
/// <param name="isInherited">true if this rule is inherited from a parent container.</param>
|
||||
/// <param name="inheritanceFlags">Specifies the inheritance properties of the access rule.</param>
|
||||
/// <param name="propagationFlags">Whether inherited access rules are automatically propagated. The propagation flags are ignored if <paramref name="inheritanceFlags" /> is set to <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="objectType">The type of object to which the rule applies.</param>
|
||||
/// <param name="inheritedObjectType">The type of child object that can inherit the rule.</param>
|
||||
/// <param name="auditFlags">The audit conditions.</param>
|
||||
/// <exception cref="T:System.ArgumentException">The value of the <paramref name="identity" /> parameter cannot be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />, or the <paramref name="type" /> parameter contains an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">The value of the <paramref name="accessMask" /> parameter is 0, or the <paramref name="inheritanceFlags" /> or <paramref name="propagationFlags" /> parameters contain unrecognized flag values.</exception>
|
||||
// Token: 0x06002DC7 RID: 11719 RVA: 0x00093EE0 File Offset: 0x000920E0
|
||||
protected ObjectAuditRule(IdentityReference identity, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, Guid objectType, Guid inheritedObjectType, AuditFlags auditFlags)
|
||||
: base(identity, accessMask, isInherited, inheritanceFlags, propagationFlags, auditFlags)
|
||||
{
|
||||
this.object_type = objectType;
|
||||
this.inherited_object_type = inheritedObjectType;
|
||||
}
|
||||
|
||||
/// <summary>Gets the type of child object that can inherit the <see cref="System.Security.AccessControl.ObjectAuditRule" /> object.</summary>
|
||||
/// <returns>The type of child object that can inherit the <see cref="System.Security.AccessControl.ObjectAuditRule" /> object.</returns>
|
||||
// Token: 0x17000904 RID: 2308
|
||||
// (get) Token: 0x06002DC8 RID: 11720 RVA: 0x00093F04 File Offset: 0x00092104
|
||||
public Guid InheritedObjectType
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.inherited_object_type;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <see cref="P:System.Security.AccessControl.ObjectAuditRule.ObjectType" /> and <see cref="P:System.Security.AccessControl.ObjectAuditRule.InheritedObjectType" /> properties of the <see cref="System.Security.AccessControl.ObjectAuditRule" /> object contain valid values.</summary>
|
||||
/// <returns>
|
||||
/// <see cref="F:System.Security.AccessControl.ObjectAceFlags.ObjectAceTypePresent" /> specifies that the <see cref="P:System.Security.AccessControl.ObjectAuditRule.ObjectType" /> property contains a valid value. <see cref="F:System.Security.AccessControl.ObjectAceFlags.InheritedObjectAceTypePresent" /> specifies that the <see cref="P:System.Security.AccessControl.ObjectAuditRule.InheritedObjectType" /> property contains a valid value. These values can be combined with a logical OR.</returns>
|
||||
// Token: 0x17000905 RID: 2309
|
||||
// (get) Token: 0x06002DC9 RID: 11721 RVA: 0x00093F0C File Offset: 0x0009210C
|
||||
public ObjectAceFlags ObjectFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
ObjectAceFlags objectAceFlags = ObjectAceFlags.None;
|
||||
if (this.object_type != Guid.Empty)
|
||||
{
|
||||
objectAceFlags |= ObjectAceFlags.ObjectAceTypePresent;
|
||||
}
|
||||
if (this.inherited_object_type != Guid.Empty)
|
||||
{
|
||||
objectAceFlags |= ObjectAceFlags.InheritedObjectAceTypePresent;
|
||||
}
|
||||
return objectAceFlags;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the type of object to which the <see cref="System.Security.AccessControl.ObjectAuditRule" /> applies.</summary>
|
||||
/// <returns>The type of object to which the <see cref="System.Security.AccessControl.ObjectAuditRule" /> applies.</returns>
|
||||
// Token: 0x17000906 RID: 2310
|
||||
// (get) Token: 0x06002DCA RID: 11722 RVA: 0x00093F50 File Offset: 0x00092150
|
||||
public Guid ObjectType
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.object_type;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x04001218 RID: 4632
|
||||
private Guid inherited_object_type;
|
||||
|
||||
// Token: 0x04001219 RID: 4633
|
||||
private Guid object_type;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,483 @@
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Provides the ability to control access to objects without direct manipulation of Access Control Lists (ACLs). This class is the abstract base class for the <see cref="T:System.Security.AccessControl.CommonObjectSecurity" /> and <see cref="T:System.Security.AccessControl.DirectoryObjectSecurity" /> classes.</summary>
|
||||
// Token: 0x020004D4 RID: 1236
|
||||
public abstract class ObjectSecurity
|
||||
{
|
||||
// Token: 0x06002DCB RID: 11723 RVA: 0x00093F58 File Offset: 0x00092158
|
||||
internal ObjectSecurity()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.ObjectSecurity" /> class.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object is a container object.</param>
|
||||
/// <param name="isDS">True if the new <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object is a directory object.</param>
|
||||
// Token: 0x06002DCC RID: 11724 RVA: 0x00093F60 File Offset: 0x00092160
|
||||
protected ObjectSecurity(bool isContainer, bool isDS)
|
||||
{
|
||||
this.is_container = isContainer;
|
||||
this.is_ds = isDS;
|
||||
}
|
||||
|
||||
/// <summary>Gets the <see cref="T:System.Type" /> of the securable object associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</summary>
|
||||
/// <returns>The type of the securable object associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</returns>
|
||||
// Token: 0x17000907 RID: 2311
|
||||
// (get) Token: 0x06002DCD RID: 11725
|
||||
public abstract Type AccessRightType { get; }
|
||||
|
||||
/// <summary>Gets the <see cref="T:System.Type" /> of the object associated with the access rules of this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object. The <see cref="T:System.Type" /> object must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</summary>
|
||||
/// <returns>The type of the object associated with the access rules of this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</returns>
|
||||
// Token: 0x17000908 RID: 2312
|
||||
// (get) Token: 0x06002DCE RID: 11726
|
||||
public abstract Type AccessRuleType { get; }
|
||||
|
||||
/// <summary>Gets the <see cref="T:System.Type" /> object associated with the audit rules of this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object. The <see cref="T:System.Type" /> object must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</summary>
|
||||
/// <returns>The type of the object associated with the audit rules of this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</returns>
|
||||
// Token: 0x17000909 RID: 2313
|
||||
// (get) Token: 0x06002DCF RID: 11727
|
||||
public abstract Type AuditRuleType { get; }
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether the access rules associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object are in canonical order.</summary>
|
||||
/// <returns>true if the access rules are in canonical order; otherwise, false.</returns>
|
||||
// Token: 0x1700090A RID: 2314
|
||||
// (get) Token: 0x06002DD0 RID: 11728 RVA: 0x00093F78 File Offset: 0x00092178
|
||||
[MonoTODO]
|
||||
public bool AreAccessRulesCanonical
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object is protected.</summary>
|
||||
/// <returns>true if the DACL is protected; otherwise, false.</returns>
|
||||
// Token: 0x1700090B RID: 2315
|
||||
// (get) Token: 0x06002DD1 RID: 11729 RVA: 0x00093F80 File Offset: 0x00092180
|
||||
[MonoTODO]
|
||||
public bool AreAccessRulesProtected
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether the audit rules associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object are in canonical order.</summary>
|
||||
/// <returns>true if the audit rules are in canonical order; otherwise, false.</returns>
|
||||
// Token: 0x1700090C RID: 2316
|
||||
// (get) Token: 0x06002DD2 RID: 11730 RVA: 0x00093F88 File Offset: 0x00092188
|
||||
[MonoTODO]
|
||||
public bool AreAuditRulesCanonical
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object is protected.</summary>
|
||||
/// <returns>true if the SACL is protected; otherwise, false.</returns>
|
||||
// Token: 0x1700090D RID: 2317
|
||||
// (get) Token: 0x06002DD3 RID: 11731 RVA: 0x00093F90 File Offset: 0x00092190
|
||||
[MonoTODO]
|
||||
public bool AreAuditRulesProtected
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets a Boolean value that specifies whether the access rules associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object have been modified.</summary>
|
||||
/// <returns>true if the access rules associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object have been modified; otherwise, false.</returns>
|
||||
// Token: 0x1700090E RID: 2318
|
||||
// (get) Token: 0x06002DD4 RID: 11732 RVA: 0x00093F98 File Offset: 0x00092198
|
||||
// (set) Token: 0x06002DD5 RID: 11733 RVA: 0x00093FA0 File Offset: 0x000921A0
|
||||
protected bool AccessRulesModified
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.access_rules_modified;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.access_rules_modified = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets a Boolean value that specifies whether the audit rules associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object have been modified.</summary>
|
||||
/// <returns>true if the audit rules associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object have been modified; otherwise, false.</returns>
|
||||
// Token: 0x1700090F RID: 2319
|
||||
// (get) Token: 0x06002DD6 RID: 11734 RVA: 0x00093FAC File Offset: 0x000921AC
|
||||
// (set) Token: 0x06002DD7 RID: 11735 RVA: 0x00093FB4 File Offset: 0x000921B4
|
||||
protected bool AuditRulesModified
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.audit_rules_modified;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.audit_rules_modified = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets a Boolean value that specifies whether the group associated with the securable object has been modified. </summary>
|
||||
/// <returns>true if the group associated with the securable object has been modified; otherwise, false.</returns>
|
||||
// Token: 0x17000910 RID: 2320
|
||||
// (get) Token: 0x06002DD8 RID: 11736 RVA: 0x00093FC0 File Offset: 0x000921C0
|
||||
// (set) Token: 0x06002DD9 RID: 11737 RVA: 0x00093FC8 File Offset: 0x000921C8
|
||||
protected bool GroupModified
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.group_modified;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.group_modified = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object is a container object.</summary>
|
||||
/// <returns>true if the <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object is a container object; otherwise, false.</returns>
|
||||
// Token: 0x17000911 RID: 2321
|
||||
// (get) Token: 0x06002DDA RID: 11738 RVA: 0x00093FD4 File Offset: 0x000921D4
|
||||
protected bool IsContainer
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.is_container;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets a Boolean value that specifies whether this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object is a directory object.</summary>
|
||||
/// <returns>true if the <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object is a directory object; otherwise, false.</returns>
|
||||
// Token: 0x17000912 RID: 2322
|
||||
// (get) Token: 0x06002DDB RID: 11739 RVA: 0x00093FDC File Offset: 0x000921DC
|
||||
protected bool IsDS
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.is_ds;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets a Boolean value that specifies whether the owner of the securable object has been modified.</summary>
|
||||
/// <returns>true if the owner of the securable object has been modified; otherwise, false.</returns>
|
||||
// Token: 0x17000913 RID: 2323
|
||||
// (get) Token: 0x06002DDC RID: 11740 RVA: 0x00093FE4 File Offset: 0x000921E4
|
||||
// (set) Token: 0x06002DDD RID: 11741 RVA: 0x00093FEC File Offset: 0x000921EC
|
||||
protected bool OwnerModified
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.owner_modified;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.owner_modified = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.AccessRule" /> class with the specified values.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.AccessRule" /> object that this method creates.</returns>
|
||||
/// <param name="identityReference">The identity to which the access rule applies. It must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="accessMask">The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.</param>
|
||||
/// <param name="isInherited">true if this rule is inherited from a parent container.</param>
|
||||
/// <param name="inheritanceFlags">Specifies the inheritance properties of the access rule.</param>
|
||||
/// <param name="propagationFlags">Specifies whether inherited access rules are automatically propagated. The propagation flags are ignored if <paramref name="inheritanceFlags" /> is set to <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="type">Specifies the valid access control type.</param>
|
||||
// Token: 0x06002DDE RID: 11742
|
||||
public abstract AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type);
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.AuditRule" /> class with the specified values.</summary>
|
||||
/// <returns>The <see cref="T:System.Security.AccessControl.AuditRule" /> object that this method creates.</returns>
|
||||
/// <param name="identityReference">The identity to which the audit rule applies. It must be an object that can be cast as a <see cref="T:System.Security.Principal.SecurityIdentifier" />.</param>
|
||||
/// <param name="accessMask">The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.</param>
|
||||
/// <param name="isInherited">true if this rule is inherited from a parent container.</param>
|
||||
/// <param name="inheritanceFlags">Specifies the inheritance properties of the audit rule.</param>
|
||||
/// <param name="propagationFlags">Specifies whether inherited audit rules are automatically propagated. The propagation flags are ignored if <paramref name="inheritanceFlags" /> is set to <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="flags">Specifies the conditions for which the rule is audited.</param>
|
||||
// Token: 0x06002DDF RID: 11743
|
||||
public abstract AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags);
|
||||
|
||||
/// <summary>Gets the primary group associated with the specified owner.</summary>
|
||||
/// <returns>The primary group associated with the specified owner.</returns>
|
||||
/// <param name="targetType">The owner for which to get the primary group. </param>
|
||||
/// <PermissionSet>
|
||||
/// <IPermission class="System.Security.Permissions.ReflectionPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="MemberAccess" />
|
||||
/// </PermissionSet>
|
||||
// Token: 0x06002DE0 RID: 11744 RVA: 0x00093FF8 File Offset: 0x000921F8
|
||||
[MonoTODO]
|
||||
public IdentityReference GetGroup(Type targetType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Gets the owner associated with the specified primary group.</summary>
|
||||
/// <returns>The owner associated with the specified group.</returns>
|
||||
/// <param name="targetType">The primary group for which to get the owner.</param>
|
||||
/// <PermissionSet>
|
||||
/// <IPermission class="System.Security.Permissions.ReflectionPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="MemberAccess" />
|
||||
/// </PermissionSet>
|
||||
// Token: 0x06002DE1 RID: 11745 RVA: 0x00094000 File Offset: 0x00092200
|
||||
[MonoTODO]
|
||||
public IdentityReference GetOwner(Type targetType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Returns an array of byte values that represents the security descriptor information for this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</summary>
|
||||
/// <returns>An array of byte values that represents the security descriptor for this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object. This method returns null if there is no security information in this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</returns>
|
||||
// Token: 0x06002DE2 RID: 11746 RVA: 0x00094008 File Offset: 0x00092208
|
||||
[MonoTODO]
|
||||
public byte[] GetSecurityDescriptorBinaryForm()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Returns the Security Descriptor Definition Language (SDDL) representation of the specified sections of the security descriptor associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</summary>
|
||||
/// <returns>The SDDL representation of the specified sections of the security descriptor associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</returns>
|
||||
/// <param name="includeSections">Specifies which sections (access rules, audit rules, primary group, owner) of the security descriptor to get.</param>
|
||||
// Token: 0x06002DE3 RID: 11747 RVA: 0x00094010 File Offset: 0x00092210
|
||||
[MonoTODO]
|
||||
public string GetSecurityDescriptorSddlForm(AccessControlSections includeSections)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Returns a Boolean value that specifies whether the security descriptor associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object can be converted to the Security Descriptor Definition Language (SDDL) format.</summary>
|
||||
/// <returns>true if the security descriptor associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object can be converted to the Security Descriptor Definition Language (SDDL) format; otherwise, false.</returns>
|
||||
// Token: 0x06002DE4 RID: 11748 RVA: 0x00094018 File Offset: 0x00092218
|
||||
[MonoTODO]
|
||||
public static bool IsSddlConversionSupported()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Applies the specified modification to the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the DACL is successfully modified; otherwise, false.</returns>
|
||||
/// <param name="modification">The modification to apply to the DACL.</param>
|
||||
/// <param name="rule">The access rule to modify.</param>
|
||||
/// <param name="modified">true if the DACL is successfully modified; otherwise, false.</param>
|
||||
// Token: 0x06002DE5 RID: 11749 RVA: 0x00094020 File Offset: 0x00092220
|
||||
[MonoTODO]
|
||||
public virtual bool ModifyAccessRule(AccessControlModification modification, AccessRule rule, out bool modified)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Applies the specified modification to the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the SACL is successfully modified; otherwise, false.</returns>
|
||||
/// <param name="modification">The modification to apply to the SACL.</param>
|
||||
/// <param name="rule">The audit rule to modify.</param>
|
||||
/// <param name="modified">true if the SACL is successfully modified; otherwise, false.</param>
|
||||
// Token: 0x06002DE6 RID: 11750 RVA: 0x00094028 File Offset: 0x00092228
|
||||
[MonoTODO]
|
||||
public virtual bool ModifyAuditRule(AccessControlModification modification, AuditRule rule, out bool modified)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access rules associated with the specified <see cref="T:System.Security.Principal.IdentityReference" />.</summary>
|
||||
/// <param name="identity">The <see cref="T:System.Security.Principal.IdentityReference" /> for which to remove all access rules.</param>
|
||||
/// <exception cref="T:System.InvalidOperationException">All access rules are not in canonical order.</exception>
|
||||
// Token: 0x06002DE7 RID: 11751 RVA: 0x00094030 File Offset: 0x00092230
|
||||
[MonoTODO]
|
||||
public virtual void PurgeAccessRules(IdentityReference identity)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules associated with the specified <see cref="T:System.Security.Principal.IdentityReference" />.</summary>
|
||||
/// <param name="identity">The <see cref="T:System.Security.Principal.IdentityReference" /> for which to remove all audit rules.</param>
|
||||
/// <exception cref="T:System.InvalidOperationException">All audit rules are not in canonical order.</exception>
|
||||
// Token: 0x06002DE8 RID: 11752 RVA: 0x00094038 File Offset: 0x00092238
|
||||
[MonoTODO]
|
||||
public virtual void PurgeAuditRules(IdentityReference identity)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets or removes protection of the access rules associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object. Protected access rules cannot be modified by parent objects through inheritance.</summary>
|
||||
/// <param name="isProtected">true to protect the access rules associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object from inheritance; false to allow inheritance.</param>
|
||||
/// <param name="preserveInheritance">true to preserve inherited access rules; false to remove inherited access rules. This parameter is ignored if <paramref name="isProtected" /> is false.</param>
|
||||
/// <exception cref="T:System.InvalidOperationException">This method attempts to remove inherited rules from a non-canonical Discretionary Access Control List (DACL).</exception>
|
||||
// Token: 0x06002DE9 RID: 11753 RVA: 0x00094040 File Offset: 0x00092240
|
||||
[MonoTODO]
|
||||
public void SetAccessRuleProtection(bool isProtected, bool preserveInheritance)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets or removes protection of the audit rules associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object. Protected audit rules cannot be modified by parent objects through inheritance.</summary>
|
||||
/// <param name="isProtected">true to protect the audit rules associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object from inheritance; false to allow inheritance.</param>
|
||||
/// <param name="preserveInheritance">true to preserve inherited audit rules; false to remove inherited audit rules. This parameter is ignored if <paramref name="isProtected" /> is false.</param>
|
||||
/// <exception cref="T:System.InvalidOperationException">This method attempts to remove inherited rules from a non-canonical System Access Control List (SACL).</exception>
|
||||
// Token: 0x06002DEA RID: 11754 RVA: 0x00094048 File Offset: 0x00092248
|
||||
[MonoTODO]
|
||||
public void SetAuditRuleProtection(bool isProtected, bool preserveInheritance)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the primary group for the security descriptor associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</summary>
|
||||
/// <param name="identity">The primary group to set.</param>
|
||||
// Token: 0x06002DEB RID: 11755 RVA: 0x00094050 File Offset: 0x00092250
|
||||
[MonoTODO]
|
||||
public void SetGroup(IdentityReference identity)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the owner for the security descriptor associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</summary>
|
||||
/// <param name="identity">The owner to set.</param>
|
||||
// Token: 0x06002DEC RID: 11756 RVA: 0x00094058 File Offset: 0x00092258
|
||||
[MonoTODO]
|
||||
public void SetOwner(IdentityReference identity)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the security descriptor for this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object from the specified array of byte values.</summary>
|
||||
/// <param name="binaryForm">The array of bytes from which to set the security descriptor.</param>
|
||||
// Token: 0x06002DED RID: 11757 RVA: 0x00094060 File Offset: 0x00092260
|
||||
[MonoTODO]
|
||||
public void SetSecurityDescriptorBinaryForm(byte[] binaryForm)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the specified sections of the security descriptor for this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object from the specified array of byte values.</summary>
|
||||
/// <param name="binaryForm">The array of bytes from which to set the security descriptor.</param>
|
||||
/// <param name="includeSections">The sections (access rules, audit rules, owner, primary group) of the security descriptor to set.</param>
|
||||
// Token: 0x06002DEE RID: 11758 RVA: 0x00094068 File Offset: 0x00092268
|
||||
[MonoTODO]
|
||||
public void SetSecurityDescriptorBinaryForm(byte[] binaryForm, AccessControlSections includeSections)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the security descriptor for this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object from the specified Security Descriptor Definition Language (SDDL) string.</summary>
|
||||
/// <param name="sddlForm">The SDDL string from which to set the security descriptor.</param>
|
||||
// Token: 0x06002DEF RID: 11759 RVA: 0x00094070 File Offset: 0x00092270
|
||||
[MonoTODO]
|
||||
public void SetSecurityDescriptorSddlForm(string sddlForm)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the specified sections of the security descriptor for this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object from the specified Security Descriptor Definition Language (SDDL) string.</summary>
|
||||
/// <param name="sddlForm">The SDDL string from which to set the security descriptor.</param>
|
||||
/// <param name="includeSections">The sections (access rules, audit rules, owner, primary group) of the security descriptor to set.</param>
|
||||
// Token: 0x06002DF0 RID: 11760 RVA: 0x00094078 File Offset: 0x00092278
|
||||
[MonoTODO]
|
||||
public void SetSecurityDescriptorSddlForm(string sddlForm, AccessControlSections includeSections)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Applies the specified modification to the Discretionary Access Control List (DACL) associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the DACL is successfully modified; otherwise, false.</returns>
|
||||
/// <param name="modification">The modification to apply to the DACL.</param>
|
||||
/// <param name="rule">The access rule to modify.</param>
|
||||
/// <param name="modified">true if the DACL is successfully modified; otherwise, false.</param>
|
||||
// Token: 0x06002DF1 RID: 11761
|
||||
protected abstract bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified);
|
||||
|
||||
/// <summary>Applies the specified modification to the System Access Control List (SACL) associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object.</summary>
|
||||
/// <returns>true if the SACL is successfully modified; otherwise, false.</returns>
|
||||
/// <param name="modification">The modification to apply to the SACL.</param>
|
||||
/// <param name="rule">The audit rule to modify.</param>
|
||||
/// <param name="modified">true if the SACL is successfully modified; otherwise, false.</param>
|
||||
// Token: 0x06002DF2 RID: 11762
|
||||
protected abstract bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified);
|
||||
|
||||
/// <summary>Saves the specified sections of the security descriptor associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object to permanent storage. We recommend that the values of the <paramref name="includeSections" /> parameters passed to the constructor and persist methods be identical. For more information, see Remarks.</summary>
|
||||
/// <param name="handle">The handle used to retrieve the persisted information.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.</param>
|
||||
// Token: 0x06002DF3 RID: 11763 RVA: 0x00094080 File Offset: 0x00092280
|
||||
[MonoTODO]
|
||||
protected virtual void Persist(SafeHandle handle, AccessControlSections includeSections)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Saves the specified sections of the security descriptor associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object to permanent storage. We recommend that the values of the <paramref name="includeSections" /> parameters passed to the constructor and persist methods be identical. For more information, see Remarks.</summary>
|
||||
/// <param name="name">The name used to retrieve the persisted information.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.</param>
|
||||
// Token: 0x06002DF4 RID: 11764 RVA: 0x00094088 File Offset: 0x00092288
|
||||
[MonoTODO]
|
||||
protected virtual void Persist(string name, AccessControlSections includeSections)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Saves the specified sections of the security descriptor associated with this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object to permanent storage. We recommend that the values of the <paramref name="includeSections" /> parameters passed to the constructor and persist methods be identical. For more information, see Remarks.</summary>
|
||||
/// <param name="enableOwnershipPrivilege">true to enable the privilege that allows the caller to take ownership of the object.</param>
|
||||
/// <param name="name">The name used to retrieve the persisted information.</param>
|
||||
/// <param name="includeSections">One of the <see cref="T:System.Security.AccessControl.AccessControlSections" /> enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.</param>
|
||||
// Token: 0x06002DF5 RID: 11765 RVA: 0x00094090 File Offset: 0x00092290
|
||||
[MonoTODO]
|
||||
protected virtual void Persist(bool enableOwnershipPrivilege, string name, AccessControlSections includeSections)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Locks this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object for read access.</summary>
|
||||
// Token: 0x06002DF6 RID: 11766 RVA: 0x00094098 File Offset: 0x00092298
|
||||
[MonoTODO]
|
||||
protected void ReadLock()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Unlocks this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object for read access.</summary>
|
||||
// Token: 0x06002DF7 RID: 11767 RVA: 0x000940A0 File Offset: 0x000922A0
|
||||
[MonoTODO]
|
||||
protected void ReadUnlock()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Locks this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object for write access.</summary>
|
||||
// Token: 0x06002DF8 RID: 11768 RVA: 0x000940A8 File Offset: 0x000922A8
|
||||
[MonoTODO]
|
||||
protected void WriteLock()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Unlocks this <see cref="T:System.Security.AccessControl.ObjectSecurity" /> object for write access.</summary>
|
||||
// Token: 0x06002DF9 RID: 11769 RVA: 0x000940B0 File Offset: 0x000922B0
|
||||
[MonoTODO]
|
||||
protected void WriteUnlock()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
// Token: 0x0400121A RID: 4634
|
||||
private bool is_container;
|
||||
|
||||
// Token: 0x0400121B RID: 4635
|
||||
private bool is_ds;
|
||||
|
||||
// Token: 0x0400121C RID: 4636
|
||||
private bool access_rules_modified;
|
||||
|
||||
// Token: 0x0400121D RID: 4637
|
||||
private bool audit_rules_modified;
|
||||
|
||||
// Token: 0x0400121E RID: 4638
|
||||
private bool group_modified;
|
||||
|
||||
// Token: 0x0400121F RID: 4639
|
||||
private bool owner_modified;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
using System;
|
||||
using System.Runtime.Serialization;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>The exception that is thrown when a method in the <see cref="N:System.Security.AccessControl" /> namespace attempts to enable a privilege that it does not have.</summary>
|
||||
// Token: 0x020004D5 RID: 1237
|
||||
[Serializable]
|
||||
public sealed class PrivilegeNotHeldException : UnauthorizedAccessException, ISerializable
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.PrivilegeNotHeldException" /> class.</summary>
|
||||
// Token: 0x06002DFA RID: 11770 RVA: 0x000940B8 File Offset: 0x000922B8
|
||||
public PrivilegeNotHeldException()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.PrivilegeNotHeldException" /> class by using the specified privilege.</summary>
|
||||
/// <param name="privilege">The privilege that is not enabled.</param>
|
||||
// Token: 0x06002DFB RID: 11771 RVA: 0x000940C0 File Offset: 0x000922C0
|
||||
public PrivilegeNotHeldException(string privilege)
|
||||
: base(privilege)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.PrivilegeNotHeldException" /> class by using the specified exception.</summary>
|
||||
/// <param name="privilege">The privilege that is not enabled.</param>
|
||||
/// <param name="inner">The exception that is the cause of the current exception. If the <paramref name="innerException" /> parameter is not a null reference (Nothing in Visual Basic), the current exception is raised in a catch block that handles the inner exception.</param>
|
||||
// Token: 0x06002DFC RID: 11772 RVA: 0x000940CC File Offset: 0x000922CC
|
||||
public PrivilegeNotHeldException(string privilege, Exception inner)
|
||||
: base(privilege, inner)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the name of the privilege that is not enabled.</summary>
|
||||
/// <returns>The name of the privilege that the method failed to enable.</returns>
|
||||
// Token: 0x17000914 RID: 2324
|
||||
// (get) Token: 0x06002DFD RID: 11773 RVA: 0x000940D8 File Offset: 0x000922D8
|
||||
public string PrivilegeName
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Sets the <paramref name="info" /> parameter with information about the exception.</summary>
|
||||
/// <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
|
||||
/// <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual information about the source or destination.</param>
|
||||
/// <PermissionSet>
|
||||
/// <IPermission class="System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Read="*AllFiles*" PathDiscovery="*AllFiles*" />
|
||||
/// </PermissionSet>
|
||||
// Token: 0x06002DFE RID: 11774 RVA: 0x000940E0 File Offset: 0x000922E0
|
||||
[MonoTODO]
|
||||
public override void GetObjectData(SerializationInfo info, StreamingContext context)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies how Access Control Entries (ACEs) are propagated to child objects. These flags are significant only if inheritance flags are present. </summary>
|
||||
// Token: 0x020004D6 RID: 1238
|
||||
[Flags]
|
||||
public enum PropagationFlags
|
||||
{
|
||||
/// <summary>Specifies that no inheritance flags are set.</summary>
|
||||
// Token: 0x04001221 RID: 4641
|
||||
None = 0,
|
||||
/// <summary>Specifies that the ACE is not propagated to child objects.</summary>
|
||||
// Token: 0x04001222 RID: 4642
|
||||
NoPropagateInherit = 1,
|
||||
/// <summary>Specifies that the ACE is propagated only to child objects. This includes both container and leaf child objects. </summary>
|
||||
// Token: 0x04001223 RID: 4643
|
||||
InheritOnly = 2
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents an Access Control Entry (ACE) that contains a qualifier. The qualifier, represented by an <see cref="T:System.Security.AccessControl.AceQualifier" /> object, specifies whether the ACE allows access, denies access, causes system audits, or causes system alarms. The <see cref="T:System.Security.AccessControl.QualifiedAce" /> class is the abstract base class for the <see cref="T:System.Security.AccessControl.CommonAce" /> and <see cref="T:System.Security.AccessControl.ObjectAce" /> classes.</summary>
|
||||
// Token: 0x020004D7 RID: 1239
|
||||
public abstract class QualifiedAce : KnownAce
|
||||
{
|
||||
// Token: 0x06002DFF RID: 11775 RVA: 0x000940E8 File Offset: 0x000922E8
|
||||
internal QualifiedAce(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AceQualifier aceQualifier, bool isCallback, byte[] opaque)
|
||||
: base(inheritanceFlags, propagationFlags)
|
||||
{
|
||||
this.ace_qualifier = aceQualifier;
|
||||
this.is_callback = isCallback;
|
||||
this.SetOpaque(opaque);
|
||||
}
|
||||
|
||||
/// <summary>Gets a value that specifies whether the ACE allows access, denies access, causes system audits, or causes system alarms.</summary>
|
||||
/// <returns>A value that specifies whether the ACE allows access, denies access, causes system audits, or causes system alarms.</returns>
|
||||
// Token: 0x17000915 RID: 2325
|
||||
// (get) Token: 0x06002E00 RID: 11776 RVA: 0x0009410C File Offset: 0x0009230C
|
||||
public AceQualifier AceQualifier
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.ace_qualifier;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Specifies whether this <see cref="T:System.Security.AccessControl.QualifiedAce" /> object contains callback data.</summary>
|
||||
/// <returns>true if this <see cref="T:System.Security.AccessControl.QualifiedAce" /> object contains callback data; otherwise, false.</returns>
|
||||
// Token: 0x17000916 RID: 2326
|
||||
// (get) Token: 0x06002E01 RID: 11777 RVA: 0x00094114 File Offset: 0x00092314
|
||||
public bool IsCallback
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.is_callback;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the length of the opaque callback data associated with this <see cref="T:System.Security.AccessControl.QualifiedAce" /> object. This property is valid only for callback Access Control Entries (ACEs).</summary>
|
||||
/// <returns>The length of the opaque callback data.</returns>
|
||||
// Token: 0x17000917 RID: 2327
|
||||
// (get) Token: 0x06002E02 RID: 11778 RVA: 0x0009411C File Offset: 0x0009231C
|
||||
public int OpaqueLength
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.opaque.Length;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Returns the opaque callback data associated with this <see cref="T:System.Security.AccessControl.QualifiedAce" /> object. </summary>
|
||||
/// <returns>An array of byte values that represents the opaque callback data associated with this <see cref="T:System.Security.AccessControl.QualifiedAce" /> object.</returns>
|
||||
// Token: 0x06002E03 RID: 11779 RVA: 0x00094128 File Offset: 0x00092328
|
||||
public byte[] GetOpaque()
|
||||
{
|
||||
return (byte[])this.opaque.Clone();
|
||||
}
|
||||
|
||||
/// <summary>Sets the opaque callback data associated with this <see cref="T:System.Security.AccessControl.QualifiedAce" /> object.</summary>
|
||||
/// <param name="opaque">An array of byte values that represents the opaque callback data for this <see cref="T:System.Security.AccessControl.QualifiedAce" /> object.</param>
|
||||
// Token: 0x06002E04 RID: 11780 RVA: 0x0009413C File Offset: 0x0009233C
|
||||
public void SetOpaque(byte[] opaque)
|
||||
{
|
||||
if (opaque == null)
|
||||
{
|
||||
throw new ArgumentNullException("opaque");
|
||||
}
|
||||
this.opaque = (byte[])opaque.Clone();
|
||||
}
|
||||
|
||||
// Token: 0x04001224 RID: 4644
|
||||
private AceQualifier ace_qualifier;
|
||||
|
||||
// Token: 0x04001225 RID: 4645
|
||||
private bool is_callback;
|
||||
|
||||
// Token: 0x04001226 RID: 4646
|
||||
private byte[] opaque;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,124 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents an Access Control List (ACL).</summary>
|
||||
// Token: 0x020004D8 RID: 1240
|
||||
public sealed class RawAcl : GenericAcl
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.RawAcl" /> class with the specified revision level.</summary>
|
||||
/// <param name="revision">The revision level of the new Access Control List (ACL).</param>
|
||||
/// <param name="capacity">The number of Access Control Entries (ACEs) this <see cref="T:System.Security.AccessControl.RawAcl" /> object can contain. This number is to be used only as a hint.</param>
|
||||
// Token: 0x06002E05 RID: 11781 RVA: 0x0009416C File Offset: 0x0009236C
|
||||
public RawAcl(byte revision, int capacity)
|
||||
{
|
||||
this.revision = revision;
|
||||
this.list = new List<GenericAce>(capacity);
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.RawAcl" /> class from the specified binary form.</summary>
|
||||
/// <param name="binaryForm">An array of byte values that represent an Access Control List (ACL).</param>
|
||||
/// <param name="offset">The offset in the <paramref name="binaryForm" /> parameter at which to begin unmarshaling data.</param>
|
||||
// Token: 0x06002E06 RID: 11782 RVA: 0x00094188 File Offset: 0x00092388
|
||||
public RawAcl(byte[] binaryForm, int offset)
|
||||
: this(0, 10)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.RawAcl" /> object. This length should be used before marshaling the ACL into a binary array with the <see cref="M:System.Security.AccessControl.RawAcl.GetBinaryForm" /> method.</summary>
|
||||
/// <returns>The length, in bytes, of the binary representation of the current <see cref="T:System.Security.AccessControl.RawAcl" /> object.</returns>
|
||||
// Token: 0x17000918 RID: 2328
|
||||
// (get) Token: 0x06002E07 RID: 11783 RVA: 0x00094194 File Offset: 0x00092394
|
||||
[MonoTODO]
|
||||
public override int BinaryLength
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the number of access control entries (ACEs) in the current <see cref="T:System.Security.AccessControl.RawAcl" /> object.</summary>
|
||||
/// <returns>The number of ACEs in the current <see cref="T:System.Security.AccessControl.RawAcl" /> object.</returns>
|
||||
// Token: 0x17000919 RID: 2329
|
||||
// (get) Token: 0x06002E08 RID: 11784 RVA: 0x0009419C File Offset: 0x0009239C
|
||||
public override int Count
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.list.Count;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the Access Control Entry (ACE) at the specified index.</summary>
|
||||
/// <returns>The ACE at the specified index.</returns>
|
||||
/// <param name="index">The zero-based index of the ACE to get or set.</param>
|
||||
// Token: 0x1700091A RID: 2330
|
||||
public override GenericAce this[int index]
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.list[index];
|
||||
}
|
||||
set
|
||||
{
|
||||
this.list[index] = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the revision level of the <see cref="T:System.Security.AccessControl.RawAcl" />.</summary>
|
||||
/// <returns>A byte value that specifies the revision level of the <see cref="T:System.Security.AccessControl.RawAcl" />.</returns>
|
||||
// Token: 0x1700091B RID: 2331
|
||||
// (get) Token: 0x06002E0B RID: 11787 RVA: 0x000941CC File Offset: 0x000923CC
|
||||
public override byte Revision
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.revision;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Marshals the contents of the <see cref="T:System.Security.AccessControl.RawAcl" /> object into the specified byte array beginning at the specified offset.</summary>
|
||||
/// <param name="binaryForm">The byte array into which the contents of the <see cref="T:System.Security.AccessControl.RawAcl" /> is marshaled.</param>
|
||||
/// <param name="offset">The offset at which to start marshaling.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="offset" /> is negative or too high to allow the entire <see cref="T:System.Security.AccessControl.RawAcl" /> to be copied into <paramref name="array" />.</exception>
|
||||
// Token: 0x06002E0C RID: 11788 RVA: 0x000941D4 File Offset: 0x000923D4
|
||||
[MonoTODO]
|
||||
public override void GetBinaryForm(byte[] binaryForm, int offset)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Inserts the specified Access Control Entry (ACE) at the specified index.</summary>
|
||||
/// <param name="index">The position at which to add the new ACE. Specify the value of the <see cref="P:System.Security.AccessControl.RawAcl.Count" /> property to insert an ACE at the end of the <see cref="T:System.Security.AccessControl.RawAcl" /> object.</param>
|
||||
/// <param name="ace">The ACE to insert.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="offset" /> is negative or too high to allow the entire <see cref="T:System.Security.AccessControl.GenericAcl" /> to be copied into <paramref name="array" />.</exception>
|
||||
// Token: 0x06002E0D RID: 11789 RVA: 0x000941DC File Offset: 0x000923DC
|
||||
public void InsertAce(int index, GenericAce ace)
|
||||
{
|
||||
if (ace == null)
|
||||
{
|
||||
throw new ArgumentNullException("ace");
|
||||
}
|
||||
this.list.Insert(index, ace);
|
||||
}
|
||||
|
||||
/// <summary>Removes the Access Control Entry (ACE) at the specified location.</summary>
|
||||
/// <param name="index">The zero-based index of the ACE to remove.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">The value of the <paramref name="index" /> parameter is higher than the value of the <see cref="P:System.Security.AccessControl.RawAcl.Count" /> property minus one or is negative.</exception>
|
||||
// Token: 0x06002E0E RID: 11790 RVA: 0x00094210 File Offset: 0x00092410
|
||||
public void RemoveAce(int index)
|
||||
{
|
||||
this.list.RemoveAt(index);
|
||||
}
|
||||
|
||||
// Token: 0x04001227 RID: 4647
|
||||
private byte revision;
|
||||
|
||||
// Token: 0x04001228 RID: 4648
|
||||
private List<GenericAce> list;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,141 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a security descriptor. A security descriptor includes an owner, a primary group, a Discretionary Access Control List (DACL), and a System Access Control List (SACL).</summary>
|
||||
// Token: 0x020004D9 RID: 1241
|
||||
public sealed class RawSecurityDescriptor : GenericSecurityDescriptor
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> class from the specified Security Descriptor Definition Language (SDDL) string.</summary>
|
||||
/// <param name="sddlForm">The SDDL string from which to create the new <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</param>
|
||||
// Token: 0x06002E0F RID: 11791 RVA: 0x00094220 File Offset: 0x00092420
|
||||
public RawSecurityDescriptor(string sddlForm)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> class from the specified array of byte values.</summary>
|
||||
/// <param name="binaryForm">The array of byte values from which to create the new <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</param>
|
||||
/// <param name="offset">The offset in the <paramref name="binaryForm" /> array at which to begin copying.</param>
|
||||
// Token: 0x06002E10 RID: 11792 RVA: 0x00094228 File Offset: 0x00092428
|
||||
public RawSecurityDescriptor(byte[] binaryForm, int offset)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> class with the specified values.</summary>
|
||||
/// <param name="flags">Flags that specify behavior of the new <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</param>
|
||||
/// <param name="owner">The owner for the new <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</param>
|
||||
/// <param name="group">The primary group for the new <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</param>
|
||||
/// <param name="systemAcl">The System Access Control List (SACL) for the new <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</param>
|
||||
/// <param name="discretionaryAcl">The Discretionary Access Control List (DACL) for the new <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</param>
|
||||
// Token: 0x06002E11 RID: 11793 RVA: 0x00094230 File Offset: 0x00092430
|
||||
public RawSecurityDescriptor(ControlFlags flags, SecurityIdentifier owner, SecurityIdentifier group, RawAcl systemAcl, RawAcl discretionaryAcl)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets values that specify behavior of the <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</summary>
|
||||
/// <returns>One or more values of the <see cref="T:System.Security.AccessControl.ControlFlags" /> enumeration combined with a logical OR operation.</returns>
|
||||
// Token: 0x1700091C RID: 2332
|
||||
// (get) Token: 0x06002E12 RID: 11794 RVA: 0x00094238 File Offset: 0x00092438
|
||||
public override ControlFlags ControlFlags
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the Discretionary Access Control List (DACL) for this <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object. The DACL contains access rules.</summary>
|
||||
/// <returns>The DACL for this <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x1700091D RID: 2333
|
||||
// (get) Token: 0x06002E13 RID: 11795 RVA: 0x00094240 File Offset: 0x00092440
|
||||
// (set) Token: 0x06002E14 RID: 11796 RVA: 0x00094248 File Offset: 0x00092448
|
||||
public RawAcl DiscretionaryAcl
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the primary group for this <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</summary>
|
||||
/// <returns>The primary group for this <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x1700091E RID: 2334
|
||||
// (get) Token: 0x06002E15 RID: 11797 RVA: 0x00094250 File Offset: 0x00092450
|
||||
// (set) Token: 0x06002E16 RID: 11798 RVA: 0x00094258 File Offset: 0x00092458
|
||||
public override SecurityIdentifier Group
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the owner of the object associated with this <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</summary>
|
||||
/// <returns>The owner of the object associated with this <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x1700091F RID: 2335
|
||||
// (get) Token: 0x06002E17 RID: 11799 RVA: 0x00094260 File Offset: 0x00092460
|
||||
// (set) Token: 0x06002E18 RID: 11800 RVA: 0x00094268 File Offset: 0x00092468
|
||||
public override SecurityIdentifier Owner
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets a byte value that represents the resource manager control bits associated with this <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</summary>
|
||||
/// <returns>A byte value that represents the resource manager control bits associated with this <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x17000920 RID: 2336
|
||||
// (get) Token: 0x06002E19 RID: 11801 RVA: 0x00094270 File Offset: 0x00092470
|
||||
// (set) Token: 0x06002E1A RID: 11802 RVA: 0x00094278 File Offset: 0x00092478
|
||||
public byte ResourceManagerControl
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets or sets the System Access Control List (SACL) for this <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object. The SACL contains audit rules.</summary>
|
||||
/// <returns>The SACL for this <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object.</returns>
|
||||
// Token: 0x17000921 RID: 2337
|
||||
// (get) Token: 0x06002E1B RID: 11803 RVA: 0x00094280 File Offset: 0x00092480
|
||||
// (set) Token: 0x06002E1C RID: 11804 RVA: 0x00094288 File Offset: 0x00092488
|
||||
public RawAcl SystemAcl
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Sets the <see cref="P:System.Security.AccessControl.RawSecurityDescriptor.ControlFlags" /> property of this <see cref="T:System.Security.AccessControl.RawSecurityDescriptor" /> object to the specified value.</summary>
|
||||
/// <param name="flags">One or more values of the <see cref="T:System.Security.AccessControl.ControlFlags" /> enumeration combined with a logical OR operation.</param>
|
||||
// Token: 0x06002E1D RID: 11805 RVA: 0x00094290 File Offset: 0x00092490
|
||||
public void SetFlags(ControlFlags flags)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,94 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a set of access rights allowed or denied for a user or group. This class cannot be inherited.</summary>
|
||||
// Token: 0x020004DA RID: 1242
|
||||
public sealed class RegistryAccessRule : AccessRule
|
||||
{
|
||||
/// <summary>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.</summary>
|
||||
/// <param name="identity">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">A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values indicating the rights allowed or denied.</param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values indicating whether the rights are allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="registryRights" /> specifies an invalid value.-or-<paramref name="type" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identity" /> is null. -or-<paramref name="eventRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" /> nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002E1E RID: 11806 RVA: 0x00094298 File Offset: 0x00092498
|
||||
public RegistryAccessRule(IdentityReference identity, RegistryRights registryRights, AccessControlType type)
|
||||
: this(identity, registryRights, InheritanceFlags.None, PropagationFlags.None, type)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>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.</summary>
|
||||
/// <param name="identity">The name of the user or group the rule applies to.</param>
|
||||
/// <param name="registryRights">A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values indicating the rights allowed or denied.</param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values indicating whether the rights are allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="registryRights" /> specifies an invalid value.-or-<paramref name="type" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="registryRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is null.-or-<paramref name="identity" /> is a zero-length string.-or-<paramref name="identity" /> is longer than 512 characters.</exception>
|
||||
// Token: 0x06002E1F RID: 11807 RVA: 0x000942A8 File Offset: 0x000924A8
|
||||
public RegistryAccessRule(string identity, RegistryRights registryRights, AccessControlType type)
|
||||
: this(new SecurityIdentifier(identity), registryRights, type)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>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.</summary>
|
||||
/// <param name="identity">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">A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values specifying the rights allowed or denied.</param>
|
||||
/// <param name="inheritanceFlags">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">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">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values specifying whether the rights are allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="registryRights" /> specifies an invalid value.-or-<paramref name="type" /> specifies an invalid value.-or-<paramref name="inheritanceFlags" /> specifies an invalid value.-or-<paramref name="propagationFlags" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identity" /> is null.-or-<paramref name="registryRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" />, nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002E20 RID: 11808 RVA: 0x000942B8 File Offset: 0x000924B8
|
||||
public RegistryAccessRule(IdentityReference identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
|
||||
: base(identity, 0, false, inheritanceFlags, propagationFlags, type)
|
||||
{
|
||||
this.rights = registryRights;
|
||||
}
|
||||
|
||||
/// <summary>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.</summary>
|
||||
/// <param name="identity">The name of the user or group the rule applies to.</param>
|
||||
/// <param name="registryRights">A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values indicating the rights allowed or denied.</param>
|
||||
/// <param name="inheritanceFlags">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">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">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values specifying whether the rights are allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="registryRights" /> specifies an invalid value.-or-<paramref name="type" /> specifies an invalid value.-or-<paramref name="inheritanceFlags" /> specifies an invalid value.-or-<paramref name="propagationFlags" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="eventRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is null.-or-<paramref name="identity" /> is a zero-length string.-or-<paramref name="identity" /> is longer than 512 characters.</exception>
|
||||
// Token: 0x06002E21 RID: 11809 RVA: 0x000942D0 File Offset: 0x000924D0
|
||||
public RegistryAccessRule(string identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
|
||||
: this(new SecurityIdentifier(identity), registryRights, inheritanceFlags, propagationFlags, type)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the rights allowed or denied by the access rule.</summary>
|
||||
/// <returns>A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values indicating the rights allowed or denied by the access rule.</returns>
|
||||
// Token: 0x17000922 RID: 2338
|
||||
// (get) Token: 0x06002E22 RID: 11810 RVA: 0x000942E4 File Offset: 0x000924E4
|
||||
public RegistryRights RegistryRights
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.rights;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x04001229 RID: 4649
|
||||
private RegistryRights rights;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a set of access rights to be audited for a user or group. This class cannot be inherited.</summary>
|
||||
// Token: 0x020004DB RID: 1243
|
||||
public sealed class RegistryAuditRule : AuditRule
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.RegistryAuditRule" /> class, specifying the user or group to audit, the rights to audit, whether to take inheritance into account, and whether to audit success, failure, or both.</summary>
|
||||
/// <param name="identity">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">A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values specifying the kinds of access to audit.</param>
|
||||
/// <param name="inheritanceFlags">A bitwise combination of <see cref="T:System.Security.AccessControl.InheritanceFlags" /> values specifying whether the audit rule applies to subkeys of the current key.</param>
|
||||
/// <param name="propagationFlags">A bitwise combination of <see cref="T:System.Security.AccessControl.PropagationFlags" /> values that affect the way an inherited audit rule is propagated to subkeys of the current key.</param>
|
||||
/// <param name="flags">A bitwise combination of <see cref="T:System.Security.AccessControl.AuditFlags" /> values specifying whether to audit success, failure, or both.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="eventRights" /> specifies an invalid value.-or-<paramref name="flags" /> specifies an invalid value.-or-<paramref name="inheritanceFlags" /> specifies an invalid value.-or-<paramref name="propagationFlags" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identity" /> is null. -or-<paramref name="registryRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" /> nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002E23 RID: 11811 RVA: 0x000942EC File Offset: 0x000924EC
|
||||
public RegistryAuditRule(IdentityReference identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags)
|
||||
: base(identity, 0, false, inheritanceFlags, propagationFlags, flags)
|
||||
{
|
||||
this.rights = registryRights;
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.RegistryAuditRule" /> class, specifying the name of the user or group to audit, the rights to audit, whether to take inheritance into account, and whether to audit success, failure, or both.</summary>
|
||||
/// <param name="identity">The name of the user or group the rule applies to.</param>
|
||||
/// <param name="registryRights">A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values specifying the kinds of access to audit.</param>
|
||||
/// <param name="inheritanceFlags">A combination of <see cref="T:System.Security.AccessControl.InheritanceFlags" /> flags that specifies whether the audit rule applies to subkeys of the current key.</param>
|
||||
/// <param name="propagationFlags">A combination of <see cref="T:System.Security.AccessControl.PropagationFlags" /> flags that affect the way an inherited audit rule is propagated to subkeys of the current key.</param>
|
||||
/// <param name="flags">A bitwise combination of <see cref="T:System.Security.AccessControl.AuditFlags" /> values specifying whether to audit success, failure, or both.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="eventRights" /> specifies an invalid value.-or-<paramref name="flags" /> specifies an invalid value.-or-<paramref name="inheritanceFlags" /> specifies an invalid value.-or-<paramref name="propagationFlags" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="registryRights" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identity" /> is null.-or-<paramref name="identity" /> is a zero-length string.-or-<paramref name="identity" /> is longer than 512 characters.</exception>
|
||||
// Token: 0x06002E24 RID: 11812 RVA: 0x00094304 File Offset: 0x00092504
|
||||
public RegistryAuditRule(string identity, RegistryRights registryRights, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags)
|
||||
: this(new SecurityIdentifier(identity), registryRights, inheritanceFlags, propagationFlags, flags)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Gets the access rights affected by the audit rule.</summary>
|
||||
/// <returns>A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values that indicates the rights affected by the audit rule.</returns>
|
||||
// Token: 0x17000923 RID: 2339
|
||||
// (get) Token: 0x06002E25 RID: 11813 RVA: 0x00094318 File Offset: 0x00092518
|
||||
public RegistryRights RegistryRights
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.rights;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0400122A RID: 4650
|
||||
private RegistryRights rights;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the access control rights that can be applied to registry objects.</summary>
|
||||
// Token: 0x020004DC RID: 1244
|
||||
[Flags]
|
||||
public enum RegistryRights
|
||||
{
|
||||
/// <summary>The right to query the name/value pairs in a registry key.</summary>
|
||||
// Token: 0x0400122C RID: 4652
|
||||
QueryValues = 1,
|
||||
/// <summary>The right to create, delete, or set name/value pairs in a registry key.</summary>
|
||||
// Token: 0x0400122D RID: 4653
|
||||
SetValue = 2,
|
||||
/// <summary>The right to create subkeys of a registry key.</summary>
|
||||
// Token: 0x0400122E RID: 4654
|
||||
CreateSubKey = 4,
|
||||
/// <summary>The right to list the subkeys of a registry key.</summary>
|
||||
// Token: 0x0400122F RID: 4655
|
||||
EnumerateSubKeys = 8,
|
||||
/// <summary>The right to request notification of changes on a registry key.</summary>
|
||||
// Token: 0x04001230 RID: 4656
|
||||
Notify = 16,
|
||||
/// <summary>Reserved for system use.</summary>
|
||||
// Token: 0x04001231 RID: 4657
|
||||
CreateLink = 32,
|
||||
/// <summary>The right to delete a registry key.</summary>
|
||||
// Token: 0x04001232 RID: 4658
|
||||
Delete = 65536,
|
||||
/// <summary>The right to open and copy the access rules and audit rules for a registry key.</summary>
|
||||
// Token: 0x04001233 RID: 4659
|
||||
ReadPermissions = 131072,
|
||||
/// <summary>The right to create, delete, and set the name/value pairs in a registry key, to create or delete subkeys, to request notification of changes, to enumerate its subkeys, and to read its access rules and audit rules.</summary>
|
||||
// Token: 0x04001234 RID: 4660
|
||||
WriteKey = 131078,
|
||||
/// <summary>The right to query the name/value pairs in a registry key, to request notification of changes, to enumerate its subkeys, and to read its access rules and audit rules.</summary>
|
||||
// Token: 0x04001235 RID: 4661
|
||||
ReadKey = 131097,
|
||||
/// <summary>Same as <see cref="F:System.Security.AccessControl.RegistryRights.ReadKey" />.</summary>
|
||||
// Token: 0x04001236 RID: 4662
|
||||
ExecuteKey = 131097,
|
||||
/// <summary>The right to change the access rules and audit rules associated with a registry key.</summary>
|
||||
// Token: 0x04001237 RID: 4663
|
||||
ChangePermissions = 262144,
|
||||
/// <summary>The right to change the owner of a registry key.</summary>
|
||||
// Token: 0x04001238 RID: 4664
|
||||
TakeOwnership = 524288,
|
||||
/// <summary>The right to exert full control over a registry key, and to modify its access rules and audit rules.</summary>
|
||||
// Token: 0x04001239 RID: 4665
|
||||
FullControl = 983103
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,194 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents the Windows access control security for a registry key. This class cannot be inherited.</summary>
|
||||
// Token: 0x020004DD RID: 1245
|
||||
public sealed class RegistrySecurity : NativeObjectSecurity
|
||||
{
|
||||
/// <summary>Gets the enumeration type that the <see cref="T:System.Security.AccessControl.RegistrySecurity" /> class uses to represent access rights.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.RegistryRights" /> enumeration.</returns>
|
||||
// Token: 0x17000924 RID: 2340
|
||||
// (get) Token: 0x06002E27 RID: 11815 RVA: 0x00094328 File Offset: 0x00092528
|
||||
public override Type AccessRightType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(RegistryRights);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the type that the <see cref="T:System.Security.AccessControl.RegistrySecurity" /> class uses to represent access rules.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> class.</returns>
|
||||
// Token: 0x17000925 RID: 2341
|
||||
// (get) Token: 0x06002E28 RID: 11816 RVA: 0x00094334 File Offset: 0x00092534
|
||||
public override Type AccessRuleType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(RegistryAccessRule);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the type that the <see cref="T:System.Security.AccessControl.RegistrySecurity" /> class uses to represent audit rules.</summary>
|
||||
/// <returns>A <see cref="T:System.Type" /> object representing the <see cref="T:System.Security.AccessControl.RegistryAuditRule" /> class.</returns>
|
||||
// Token: 0x17000926 RID: 2342
|
||||
// (get) Token: 0x06002E29 RID: 11817 RVA: 0x00094340 File Offset: 0x00092540
|
||||
public override Type AuditRuleType
|
||||
{
|
||||
get
|
||||
{
|
||||
return typeof(RegistryAuditRule);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Creates a new access control rule for the specified user, with the specified access rights, access control, and flags.</summary>
|
||||
/// <returns>A <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> object representing the specified rights for the specified user.</returns>
|
||||
/// <param name="identityReference">An <see cref="T:System.Security.Principal.IdentityReference" /> that identifies the user or group the rule applies to.</param>
|
||||
/// <param name="accessMask">A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values specifying the access rights to allow or deny, cast to an integer.</param>
|
||||
/// <param name="isInherited">A Boolean value specifying whether the rule is inherited.</param>
|
||||
/// <param name="inheritanceFlags">A bitwise combination of <see cref="T:System.Security.AccessControl.InheritanceFlags" /> values specifying how the rule is inherited by subkeys.</param>
|
||||
/// <param name="propagationFlags">A bitwise combination of <see cref="T:System.Security.AccessControl.PropagationFlags" /> values that modify the way the rule is inherited by subkeys. Meaningless if the value of <paramref name="inheritanceFlags" /> is <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="type">One of the <see cref="T:System.Security.AccessControl.AccessControlType" /> values specifying whether the rights are allowed or denied.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="accessMask" />, <paramref name="inheritanceFlags" />, <paramref name="propagationFlags" />, or <paramref name="type" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identityReference" /> is null. -or-<paramref name="accessMask" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identityReference" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" />, nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002E2A RID: 11818 RVA: 0x0009434C File Offset: 0x0009254C
|
||||
public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
|
||||
{
|
||||
return new RegistryAccessRule(identityReference, (RegistryRights)accessMask, inheritanceFlags, propagationFlags, type);
|
||||
}
|
||||
|
||||
/// <summary>Searches for a matching access control with which the new rule can be merged. If none are found, adds the new rule.</summary>
|
||||
/// <param name="rule">The access control rule to add.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002E2B RID: 11819 RVA: 0x0009435C File Offset: 0x0009255C
|
||||
public void AddAccessRule(RegistryAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an audit rule with which the new rule can be merged. If none are found, adds the new rule.</summary>
|
||||
/// <param name="rule">The audit rule to add. The user specified by this rule determines the search.</param>
|
||||
// Token: 0x06002E2C RID: 11820 RVA: 0x00094364 File Offset: 0x00092564
|
||||
public void AddAuditRule(RegistryAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Creates a new audit rule, specifying the user the rule applies to, the access rights to audit, the inheritance and propagation of the rule, and the outcome that triggers the rule.</summary>
|
||||
/// <returns>A <see cref="T:System.Security.AccessControl.RegistryAuditRule" /> object representing the specified audit rule for the specified user, with the specified flags. The return type of the method is the base class, <see cref="T:System.Security.AccessControl.AuditRule" />, but the return value can be cast safely to the derived class.</returns>
|
||||
/// <param name="identityReference">An <see cref="T:System.Security.Principal.IdentityReference" /> that identifies the user or group the rule applies to.</param>
|
||||
/// <param name="accessMask">A bitwise combination of <see cref="T:System.Security.AccessControl.RegistryRights" /> values specifying the access rights to audit, cast to an integer.</param>
|
||||
/// <param name="isInherited">A Boolean value specifying whether the rule is inherited.</param>
|
||||
/// <param name="inheritanceFlags">A bitwise combination of <see cref="T:System.Security.AccessControl.InheritanceFlags" /> values specifying how the rule is inherited by subkeys.</param>
|
||||
/// <param name="propagationFlags">A bitwise combination of <see cref="T:System.Security.AccessControl.PropagationFlags" /> values that modify the way the rule is inherited by subkeys. Meaningless if the value of <paramref name="inheritanceFlags" /> is <see cref="F:System.Security.AccessControl.InheritanceFlags.None" />.</param>
|
||||
/// <param name="flags">A bitwise combination of <see cref="T:System.Security.AccessControl.AuditFlags" /> values specifying whether to audit successful access, failed access, or both.</param>
|
||||
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
||||
/// <paramref name="accessMask" />, <paramref name="inheritanceFlags" />, <paramref name="propagationFlags" />, or <paramref name="flags" /> specifies an invalid value.</exception>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="identityReference" /> is null. -or-<paramref name="accessMask" /> is zero.</exception>
|
||||
/// <exception cref="T:System.ArgumentException">
|
||||
/// <paramref name="identityReference" /> is neither of type <see cref="T:System.Security.Principal.SecurityIdentifier" />, nor of a type such as <see cref="T:System.Security.Principal.NTAccount" /> that can be converted to type <see cref="T:System.Security.Principal.SecurityIdentifier" />.</exception>
|
||||
// Token: 0x06002E2D RID: 11821 RVA: 0x0009436C File Offset: 0x0009256C
|
||||
public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags)
|
||||
{
|
||||
return new RegistryAuditRule(identityReference, (RegistryRights)accessMask, inheritanceFlags, propagationFlags, flags);
|
||||
}
|
||||
|
||||
/// <summary>Searches for an access control rule with the same user and <see cref="T:System.Security.AccessControl.AccessControlType" /> (allow or deny) as the specified access rule, and with compatible inheritance and propagation flags; if such a rule is found, the rights contained in the specified access rule are removed from it.</summary>
|
||||
/// <returns>true if a compatible rule is found; otherwise false.</returns>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> that specifies the user and <see cref="T:System.Security.AccessControl.AccessControlType" /> to search for, and a set of inheritance and propagation flags that a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002E2E RID: 11822 RVA: 0x0009437C File Offset: 0x0009257C
|
||||
public bool RemoveAccessRule(RegistryAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for all access control rules with the same user and <see cref="T:System.Security.AccessControl.AccessControlType" /> (allow or deny) as the specified rule and, if found, removes them.</summary>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> that specifies the user and <see cref="T:System.Security.AccessControl.AccessControlType" /> to search for. Any rights, inheritance flags, or propagation flags specified by this rule are ignored.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002E2F RID: 11823 RVA: 0x00094384 File Offset: 0x00092584
|
||||
public void RemoveAccessRuleAll(RegistryAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an access control rule that exactly matches the specified rule and, if found, removes it.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> to remove.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002E30 RID: 11824 RVA: 0x0009438C File Offset: 0x0009258C
|
||||
public void RemoveAccessRuleSpecific(RegistryAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an audit control rule with the same user as the specified rule, and with compatible inheritance and propagation flags; if a compatible rule is found, the rights contained in the specified rule are removed from it.</summary>
|
||||
/// <returns>true if a compatible rule is found; otherwise, false.</returns>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.RegistryAuditRule" /> that specifies the user to search for, and a set of inheritance and propagation flags that a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002E31 RID: 11825 RVA: 0x00094394 File Offset: 0x00092594
|
||||
public bool RemoveAuditRule(RegistryAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for all audit rules with the same user as the specified rule and, if found, removes them.</summary>
|
||||
/// <param name="rule">A <see cref="T:System.Security.AccessControl.RegistryAuditRule" /> that specifies the user to search for. Any rights, inheritance flags, or propagation flags specified by this rule are ignored.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002E32 RID: 11826 RVA: 0x0009439C File Offset: 0x0009259C
|
||||
public void RemoveAuditRuleAll(RegistryAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Searches for an audit rule that exactly matches the specified rule and, if found, removes it.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.RegistryAuditRule" /> to be removed.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002E33 RID: 11827 RVA: 0x000943A4 File Offset: 0x000925A4
|
||||
public void RemoveAuditRuleSpecific(RegistryAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access control rules with the same user as the specified rule, regardless of <see cref="T:System.Security.AccessControl.AccessControlType" />, and then adds the specified rule.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> to add. The user specified by this rule determines the rules to remove before this rule is added.</param>
|
||||
// Token: 0x06002E34 RID: 11828 RVA: 0x000943AC File Offset: 0x000925AC
|
||||
public void ResetAccessRule(RegistryAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all access control rules with the same user and <see cref="T:System.Security.AccessControl.AccessControlType" /> (allow or deny) as the specified rule, and then adds the specified rule.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.RegistryAccessRule" /> to add. The user and <see cref="T:System.Security.AccessControl.AccessControlType" /> of this rule determine the rules to remove before this rule is added.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002E35 RID: 11829 RVA: 0x000943B4 File Offset: 0x000925B4
|
||||
public void SetAccessRule(RegistryAccessRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes all audit rules with the same user as the specified rule, regardless of the <see cref="T:System.Security.AccessControl.AuditFlags" /> value, and then adds the specified rule.</summary>
|
||||
/// <param name="rule">The <see cref="T:System.Security.AccessControl.RegistryAuditRule" /> to add. The user specified by this rule determines the rules to remove before this rule is added.</param>
|
||||
/// <exception cref="T:System.ArgumentNullException">
|
||||
/// <paramref name="rule" /> is null.</exception>
|
||||
// Token: 0x06002E36 RID: 11830 RVA: 0x000943BC File Offset: 0x000925BC
|
||||
public void SetAuditRule(RegistryAuditRule rule)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the defined native object types.</summary>
|
||||
// Token: 0x020004DE RID: 1246
|
||||
public enum ResourceType
|
||||
{
|
||||
/// <summary>An unknown object type.</summary>
|
||||
// Token: 0x0400123B RID: 4667
|
||||
Unknown,
|
||||
/// <summary>A file or directory.</summary>
|
||||
// Token: 0x0400123C RID: 4668
|
||||
FileObject,
|
||||
/// <summary>A Windows service.</summary>
|
||||
// Token: 0x0400123D RID: 4669
|
||||
Service,
|
||||
/// <summary>A printer.</summary>
|
||||
// Token: 0x0400123E RID: 4670
|
||||
Printer,
|
||||
/// <summary>A registry key.</summary>
|
||||
// Token: 0x0400123F RID: 4671
|
||||
RegistryKey,
|
||||
/// <summary>A network share.</summary>
|
||||
// Token: 0x04001240 RID: 4672
|
||||
LMShare,
|
||||
/// <summary>A local kernel object.</summary>
|
||||
// Token: 0x04001241 RID: 4673
|
||||
KernelObject,
|
||||
/// <summary>A window station or desktop object on the local computer.</summary>
|
||||
// Token: 0x04001242 RID: 4674
|
||||
WindowObject,
|
||||
/// <summary>A directory service (DS) object or a property set or property of a directory service object.</summary>
|
||||
// Token: 0x04001243 RID: 4675
|
||||
DSObject,
|
||||
/// <summary>A directory service object and all of its property sets and properties.</summary>
|
||||
// Token: 0x04001244 RID: 4676
|
||||
DSObjectAll,
|
||||
/// <summary>An object defined by a provider.</summary>
|
||||
// Token: 0x04001245 RID: 4677
|
||||
ProviderDefined,
|
||||
/// <summary>A Windows Management Instrumentation (WMI) object.</summary>
|
||||
// Token: 0x04001246 RID: 4678
|
||||
WmiGuidObject,
|
||||
/// <summary>An object for a registry entry under WOW64.</summary>
|
||||
// Token: 0x04001247 RID: 4679
|
||||
RegistryWow6432Key
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Specifies the section of a security descriptor to be queried or set.</summary>
|
||||
// Token: 0x020004DF RID: 1247
|
||||
[Flags]
|
||||
public enum SecurityInfos
|
||||
{
|
||||
/// <summary>Specifies the owner identifier.</summary>
|
||||
// Token: 0x04001249 RID: 4681
|
||||
Owner = 1,
|
||||
/// <summary>Specifies the primary group identifier.</summary>
|
||||
// Token: 0x0400124A RID: 4682
|
||||
Group = 2,
|
||||
/// <summary>Specifies the discretionary access control list (DACL).</summary>
|
||||
// Token: 0x0400124B RID: 4683
|
||||
DiscretionaryAcl = 4,
|
||||
/// <summary>Specifies the system access control list (SACL).</summary>
|
||||
// Token: 0x0400124C RID: 4684
|
||||
SystemAcl = 8
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,151 @@
|
||||
using System;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace System.Security.AccessControl
|
||||
{
|
||||
/// <summary>Represents a System Access Control List (SACL).</summary>
|
||||
// Token: 0x020004E0 RID: 1248
|
||||
public sealed class SystemAcl : CommonAcl
|
||||
{
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.SystemAcl" /> class with the specified values.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.SystemAcl" /> object is a container.</param>
|
||||
/// <param name="isDS">true if the new <see cref="T:System.Security.AccessControl.SystemAcl" /> object is a directory object Access Control List (ACL).</param>
|
||||
/// <param name="capacity">The number of Access Control Entries (ACEs) this <see cref="T:System.Security.AccessControl.SystemAcl" /> object can contain. This number is to be used only as a hint.</param>
|
||||
// Token: 0x06002E37 RID: 11831 RVA: 0x000943C4 File Offset: 0x000925C4
|
||||
public SystemAcl(bool isContainer, bool isDS, int capacity)
|
||||
: this(isContainer, isDS, 0, capacity)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.SystemAcl" /> class with the specified values from the specified <see cref="T:System.Security.AccessControl.RawAcl" /> object.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.SystemAcl" /> object is a container.</param>
|
||||
/// <param name="isDS">true if the new <see cref="T:System.Security.AccessControl.SystemAcl" /> object is a directory object Access Control List (ACL).</param>
|
||||
/// <param name="rawAcl">The underlying <see cref="T:System.Security.AccessControl.RawAcl" /> object for the new <see cref="T:System.Security.AccessControl.SystemAcl" /> object. Specify null to create an empty ACL.</param>
|
||||
// Token: 0x06002E38 RID: 11832 RVA: 0x000943D0 File Offset: 0x000925D0
|
||||
public SystemAcl(bool isContainer, bool isDS, RawAcl rawAcl)
|
||||
: this(isContainer, isDS, 0)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Initializes a new instance of the <see cref="T:System.Security.AccessControl.SystemAcl" /> class with the specified values.</summary>
|
||||
/// <param name="isContainer">true if the new <see cref="T:System.Security.AccessControl.SystemAcl" /> object is a container.</param>
|
||||
/// <param name="isDS">true if the new <see cref="T:System.Security.AccessControl.SystemAcl" /> object is a directory object Access Control List (ACL).</param>
|
||||
/// <param name="revision">The revision level of the new <see cref="T:System.Security.AccessControl.SystemAcl" /> object.</param>
|
||||
/// <param name="capacity">The number of Access Control Entries (ACEs) this <see cref="T:System.Security.AccessControl.SystemAcl" /> object can contain. This number is to be used only as a hint.</param>
|
||||
// Token: 0x06002E39 RID: 11833 RVA: 0x000943DC File Offset: 0x000925DC
|
||||
public SystemAcl(bool isContainer, bool isDS, byte revision, int capacity)
|
||||
: base(isContainer, isDS, revision, capacity)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>Adds an audit rule to the current <see cref="T:System.Security.AccessControl.SystemAcl" /> object.</summary>
|
||||
/// <param name="auditFlags">The type of audit rule to add.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to add an audit rule.</param>
|
||||
/// <param name="accessMask">The access mask for the new audit rule.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the new audit rule.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the new audit rule.</param>
|
||||
// Token: 0x06002E3A RID: 11834 RVA: 0x000943EC File Offset: 0x000925EC
|
||||
public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Adds an audit rule with the specified settings to the current <see cref="T:System.Security.AccessControl.SystemAcl" /> object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type for the new audit rule.</summary>
|
||||
/// <param name="auditFlags">The type of audit rule to add.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to add an audit rule.</param>
|
||||
/// <param name="accessMask">The access mask for the new audit rule.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the new audit rule.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the new audit rule.</param>
|
||||
/// <param name="objectFlags">Flags that specify if the <paramref name="objectType" /> and <paramref name="inheritedObjectType" /> parameters contain non-null values.</param>
|
||||
/// <param name="objectType">The identity of the class of objects to which the new audit rule applies.</param>
|
||||
/// <param name="inheritedObjectType">The identity of the class of child objects which can inherit the new audit rule.</param>
|
||||
// Token: 0x06002E3B RID: 11835 RVA: 0x000943F4 File Offset: 0x000925F4
|
||||
public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes the specified audit rule from the current <see cref="T:System.Security.AccessControl.SystemAcl" /> object.</summary>
|
||||
/// <returns>true if this method successfully removes the specified audit rule; otherwise, false.</returns>
|
||||
/// <param name="auditFlags">The type of audit rule to remove.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to remove an audit rule.</param>
|
||||
/// <param name="accessMask">The access mask for the rule to be removed.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the rule to be removed.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the rule to be removed.</param>
|
||||
// Token: 0x06002E3C RID: 11836 RVA: 0x000943FC File Offset: 0x000925FC
|
||||
public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes the specified audit rule from the current <see cref="T:System.Security.AccessControl.SystemAcl" /> object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type.</summary>
|
||||
/// <returns>true if this method successfully removes the specified audit rule; otherwise, false.</returns>
|
||||
/// <param name="auditFlags">The type of audit rule to remove.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to remove an audit rule.</param>
|
||||
/// <param name="accessMask">The access mask for the rule to be removed.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the rule to be removed.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the rule to be removed.</param>
|
||||
/// <param name="objectFlags">Flags that specify if the <paramref name="objectType" /> and <paramref name="inheritedObjectType" /> parameters contain non-null values.</param>
|
||||
/// <param name="objectType">The identity of the class of objects to which the removed audit control rule applies.</param>
|
||||
/// <param name="inheritedObjectType">The identity of the class of child objects which can inherit the removed audit rule.</param>
|
||||
// Token: 0x06002E3D RID: 11837 RVA: 0x00094404 File Offset: 0x00092604
|
||||
public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes the specified audit rule from the current <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object.</summary>
|
||||
/// <param name="auditFlags">The type of audit rule to remove.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to remove an audit rule.</param>
|
||||
/// <param name="accessMask">The access mask for the rule to be removed.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the rule to be removed.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the rule to be removed.</param>
|
||||
// Token: 0x06002E3E RID: 11838 RVA: 0x0009440C File Offset: 0x0009260C
|
||||
public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Removes the specified audit rule from the current <see cref="T:System.Security.AccessControl.DiscretionaryAcl" /> object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type.</summary>
|
||||
/// <param name="auditFlags">The type of audit rule to remove.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to remove an audit rule.</param>
|
||||
/// <param name="accessMask">The access mask for the rule to be removed.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the rule to be removed.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the rule to be removed.</param>
|
||||
/// <param name="objectFlags">Flags that specify if the <paramref name="objectType" /> and <paramref name="inheritedObjectType" /> parameters contain non-null values.</param>
|
||||
/// <param name="objectType">The identity of the class of objects to which the removed audit control rule applies.</param>
|
||||
/// <param name="inheritedObjectType">The identity of the class of child objects which can inherit the removed audit rule.</param>
|
||||
// Token: 0x06002E3F RID: 11839 RVA: 0x00094414 File Offset: 0x00092614
|
||||
public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the specified audit rule for the specified <see cref="T:System.Security.Principal.SecurityIdentifier" /> object.</summary>
|
||||
/// <param name="auditFlags">The audit condition to set.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to set an audit rule.</param>
|
||||
/// <param name="accessMask">The access mask for the new audit rule.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the new audit rule.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the new audit rule.</param>
|
||||
// Token: 0x06002E40 RID: 11840 RVA: 0x0009441C File Offset: 0x0009261C
|
||||
public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
/// <summary>Sets the specified audit rule for the specified <see cref="T:System.Security.Principal.SecurityIdentifier" /> object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type.</summary>
|
||||
/// <param name="auditFlags">The audit condition to set.</param>
|
||||
/// <param name="sid">The <see cref="T:System.Security.Principal.SecurityIdentifier" /> for which to set an audit rule.</param>
|
||||
/// <param name="accessMask">The access mask for the new audit rule.</param>
|
||||
/// <param name="inheritanceFlags">Flags that specify the inheritance properties of the new audit rule.</param>
|
||||
/// <param name="propagationFlags">Flags that specify the inheritance propagation properties for the new audit rule.</param>
|
||||
/// <param name="objectFlags">Flags that specify if the <paramref name="objectType" /> and <paramref name="inheritedObjectType" /> parameters contain non-null values.</param>
|
||||
/// <param name="objectType">The identity of the class of objects to which the new audit rule applies.</param>
|
||||
/// <param name="inheritedObjectType">The identity of the class of child objects which can inherit the new audit rule.</param>
|
||||
// Token: 0x06002E41 RID: 11841 RVA: 0x00094424 File Offset: 0x00092624
|
||||
public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user