System.Security.AccessControl.DiscretionaryAcl.RemoveAccess Method

Removes the specified access control rule from the current 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.

Syntax

public bool RemoveAccess (AccessControlType accessType, System.Security.Principal.SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)

Parameters

accessType
The type of access control (allow or deny) to remove.
sid
The System.Security.Principal.SecurityIdentifier for which to remove an access control rule.
accessMask
The access mask for the access control rule to be removed.
inheritanceFlags
Flags that specify the inheritance properties of the access control rule to be removed.
propagationFlags
Flags that specify the inheritance propagation properties for the access control rule to be removed.
objectFlags
Flags that specify if the objectType and inheritedObjectType parameters contain non-null values.
objectType
The identity of the class of objects to which the removed access control rule applies.
inheritedObjectType
The identity of the class of child objects which can inherit the removed access control rule.

Returns

true if this method successfully removes the specified access; otherwise, false.

Remarks

Access removal is accomplished by using a complex algorithm that might add Access Control Entries (ACEs) in addition to removing them.

Requirements

Namespace: System.Security.AccessControl
Assembly: mscorlib (in mscorlib.dll)
Assembly Versions: 2.0.0.0, 4.0.0.0
Since: .NET 2.0