using System;
using System.Security.Principal;
namespace System.Security.AccessControl
{
/// Provides the ability to control access to directory objects without direct manipulation of Access Control Lists (ACLs).
// Token: 0x020004BA RID: 1210
public abstract class DirectoryObjectSecurity : ObjectSecurity
{
/// Initializes a new instance of the class.
// Token: 0x06002D14 RID: 11540 RVA: 0x00093614 File Offset: 0x00091814
protected DirectoryObjectSecurity()
: base(false, true)
{
}
/// Initializes a new instance of the class with the specified security descriptor.
/// The security descriptor to be associated with the new object.
// 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");
}
}
/// Initializes a new instance of the class with the specified values.
/// The object that this method creates.
/// The identity to which the access rule applies. It must be an object that can be cast as a .
/// 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.
/// true if this rule is inherited from a parent container.
/// Specifies the inheritance properties of the access rule.
/// Specifies whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to .
/// Specifies the valid access control type.
/// The identity of the class of objects to which the new access rule applies.
/// The identity of the class of child objects which can inherit the new access rule.
// 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();
}
/// Initializes a new instance of the class with the specified values.
/// The object that this method creates.
/// The identity to which the audit rule applies. It must be an object that can be cast as a .
/// 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.
/// true if this rule is inherited from a parent container.
/// Specifies the inheritance properties of the audit rule.
/// Specifies whether inherited audit rules are automatically propagated. The propagation flags are ignored if is set to .
/// Specifies the conditions for which the rule is audited.
/// The identity of the class of objects to which the new audit rule applies.
/// The identity of the class of child objects which can inherit the new audit rule.
// 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();
}
/// Gets a collection of the access rules associated with the specified security identifier.
/// The collection of access rules associated with the specified object.
/// true to include access rules explicitly set for the object.
/// true to include inherited access rules.
/// The security identifier for which to retrieve access rules. This must be an object that can be cast as a object.
///
///
///
// Token: 0x06002D18 RID: 11544 RVA: 0x0009365C File Offset: 0x0009185C
public AuthorizationRuleCollection GetAccessRules(bool includeExplicit, bool includeInherited, Type targetType)
{
throw new NotImplementedException();
}
/// Gets a collection of the audit rules associated with the specified security identifier.
/// The collection of audit rules associated with the specified object.
/// true to include audit rules explicitly set for the object.
/// true to include inherited audit rules.
/// The security identifier for which to retrieve audit rules. This must be an object that can be cast as a object.
///
///
///
// Token: 0x06002D19 RID: 11545 RVA: 0x00093664 File Offset: 0x00091864
public AuthorizationRuleCollection GetAuditRules(bool includeExplicit, bool includeInherited, Type targetType)
{
throw new NotImplementedException();
}
/// Adds the specified access rule to the Discretionary Access Control List (DACL) associated with this object.
/// The access rule to add.
// Token: 0x06002D1A RID: 11546 RVA: 0x0009366C File Offset: 0x0009186C
protected void AddAccessRule(ObjectAccessRule rule)
{
throw new NotImplementedException();
}
/// Adds the specified audit rule to the System Access Control List (SACL) associated with this object.
/// The audit rule to add.
// Token: 0x06002D1B RID: 11547 RVA: 0x00093674 File Offset: 0x00091874
protected void AddAuditRule(ObjectAuditRule rule)
{
throw new NotImplementedException();
}
/// Applies the specified modification to the Discretionary Access Control List (DACL) associated with this object.
/// true if the DACL is successfully modified; otherwise, false.
/// The modification to apply to the DACL.
/// The access rule to modify.
/// true if the DACL is successfully modified; otherwise, false.
// Token: 0x06002D1C RID: 11548 RVA: 0x0009367C File Offset: 0x0009187C
protected override bool ModifyAccess(AccessControlModification modification, AccessRule rule, out bool modified)
{
throw new NotImplementedException();
}
/// Applies the specified modification to the System Access Control List (SACL) associated with this object.
/// true if the SACL is successfully modified; otherwise, false.
/// The modification to apply to the SACL.
/// The audit rule to modify.
/// true if the SACL is successfully modified; otherwise, false.
// Token: 0x06002D1D RID: 11549 RVA: 0x00093684 File Offset: 0x00091884
protected override bool ModifyAudit(AccessControlModification modification, AuditRule rule, out bool modified)
{
throw new NotImplementedException();
}
/// 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 object.
/// true if the access rule was successfully removed; otherwise, false.
/// The access rule to remove.
// Token: 0x06002D1E RID: 11550 RVA: 0x0009368C File Offset: 0x0009188C
protected bool RemoveAccessRule(ObjectAccessRule rule)
{
throw new NotImplementedException();
}
/// 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 object.
/// The access rule to remove.
// Token: 0x06002D1F RID: 11551 RVA: 0x00093694 File Offset: 0x00091894
protected void RemoveAccessRuleAll(ObjectAccessRule rule)
{
throw new NotImplementedException();
}
/// Removes all access rules that exactly match the specified access rule from the Discretionary Access Control List (DACL) associated with this object.
/// The access rule to remove.
// Token: 0x06002D20 RID: 11552 RVA: 0x0009369C File Offset: 0x0009189C
protected void RemoveAccessRuleSpecific(ObjectAccessRule rule)
{
throw new NotImplementedException();
}
/// 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 object.
/// true if the audit rule was successfully removed; otherwise, false.
/// The audit rule to remove.
// Token: 0x06002D21 RID: 11553 RVA: 0x000936A4 File Offset: 0x000918A4
protected bool RemoveAuditRule(ObjectAuditRule rule)
{
throw new NotImplementedException();
}
/// 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 object.
/// The audit rule to remove.
// Token: 0x06002D22 RID: 11554 RVA: 0x000936AC File Offset: 0x000918AC
protected void RemoveAuditRuleAll(ObjectAuditRule rule)
{
throw new NotImplementedException();
}
/// Removes all audit rules that exactly match the specified audit rule from the System Access Control List (SACL) associated with this object.
/// The audit rule to remove.
// Token: 0x06002D23 RID: 11555 RVA: 0x000936B4 File Offset: 0x000918B4
protected void RemoveAuditRuleSpecific(ObjectAuditRule rule)
{
throw new NotImplementedException();
}
/// Removes all access rules in the Discretionary Access Control List (DACL) associated with this object and then adds the specified access rule.
/// The access rule to reset.
// Token: 0x06002D24 RID: 11556 RVA: 0x000936BC File Offset: 0x000918BC
protected void ResetAccessRule(ObjectAccessRule rule)
{
throw new NotImplementedException();
}
/// 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 object and then adds the specified access rule.
/// The access rule to set.
// Token: 0x06002D25 RID: 11557 RVA: 0x000936C4 File Offset: 0x000918C4
protected void SetAccessRule(ObjectAccessRule rule)
{
throw new NotImplementedException();
}
/// 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 object and then adds the specified audit rule.
/// The audit rule to set.
// Token: 0x06002D26 RID: 11558 RVA: 0x000936CC File Offset: 0x000918CC
protected void SetAuditRule(ObjectAuditRule rule)
{
throw new NotImplementedException();
}
}
}