using System; using System.Security.Principal; namespace System.Security.AccessControl { /// Controls access to Directory Services objects. This class represents an Access Control Entry (ACE) associated with a directory object. // Token: 0x020004D1 RID: 1233 public sealed class ObjectAce : QualifiedAce { /// Initiates a new instance of the class. /// The inheritance, inheritance propagation, and auditing conditions for the new Access Control Entry (ACE). /// The use of the new ACE. /// The access mask for the ACE. /// The associated with the new ACE. /// Whether the and parameters contain valid object GUIDs. /// A GUID that identifies the object type to which the new ACE applies. /// A GUID that identifies the object type that can inherit the new ACE. /// true if the new ACE is a callback type ACE. /// 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 method. /// 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 method. // 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; } /// Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method. /// The length, in bytes, of the binary representation of the current object. // Token: 0x17000900 RID: 2304 // (get) Token: 0x06002DBE RID: 11710 RVA: 0x00093E8C File Offset: 0x0009208C [MonoTODO] public override int BinaryLength { get { throw new NotImplementedException(); } } /// Gets or sets the GUID of the object type that can inherit the Access Control Entry (ACE) that this object represents. /// The GUID of the object type that can inherit the Access Control Entry (ACE) that this object represents. // 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; } } /// Gets or sets flags that specify whether the and properties contain values that identify valid object types. /// On or more members of the enumeration combined with a logical OR operation. // 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; } } /// Gets or sets the GUID of the object type associated with this object. /// The GUID of the object type associated with this object. // 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; } } /// Marshals the contents of the object into the specified byte array beginning at the specified offset. /// The byte array into which the contents of the is marshaled. /// The offset at which to start marshaling. /// /// is negative or too high to allow the entire to be copied into . // Token: 0x06002DC5 RID: 11717 RVA: 0x00093ED0 File Offset: 0x000920D0 [MonoTODO] public override void GetBinaryForm(byte[] binaryForm, int offset) { throw new NotImplementedException(); } /// Returns the maximum allowed length, in bytes, of an opaque data BLOB for callback Access Control Entries (ACEs). /// The maximum allowed length, in bytes, of an opaque data BLOB for callback Access Control Entries (ACEs). /// True if the is a callback ACE type. // 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; } }