using System;
using System.Security.Principal;
namespace System.Security.AccessControl
{
/// Represents the access control and audit security for a file or directory.
// 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)
{
}
/// Gets the enumeration that the class uses to represent access rights.
/// A object representing the enumeration.
// Token: 0x170008E1 RID: 2273
// (get) Token: 0x06002D58 RID: 11608 RVA: 0x000939CC File Offset: 0x00091BCC
public override Type AccessRightType
{
get
{
return typeof(FileSystemRights);
}
}
/// Gets the enumeration that the class uses to represent access rules.
/// A object representing the class.
// Token: 0x170008E2 RID: 2274
// (get) Token: 0x06002D59 RID: 11609 RVA: 0x000939D8 File Offset: 0x00091BD8
public override Type AccessRuleType
{
get
{
return typeof(FileSystemAccessRule);
}
}
/// Gets the type that the class uses to represent audit rules.
/// A object representing the class.
// Token: 0x170008E3 RID: 2275
// (get) Token: 0x06002D5A RID: 11610 RVA: 0x000939E4 File Offset: 0x00091BE4
public override Type AuditRuleType
{
get
{
return typeof(FileSystemAuditRule);
}
}
/// Initializes a new instance of the class that represents a new access control rule for the specified user, with the specified access rights, access control, and flags.
/// A new object that represents a new access control rule for the specified user, with the specified access rights, access control, and flags.
/// An object that represents a user account.
/// An integer that specifies an access type.
/// true if the access rule is inherited; otherwise, false.
/// One of the values that specifies how to propagate access masks to child objects.
/// One of the values that specifies how to propagate Access Control Entries (ACEs) to child objects.
/// One of the values that specifies whether access is allowed or denied.
/// The , , , or parameters specify an invalid value.
/// The parameter is null. -or-The parameter is zero.
/// The parameter is neither of type , nor of a type such as that can be converted to type .
// 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);
}
/// Adds the specified access control list (ACL) permission to the current file or directory.
/// A object that represents an access control list (ACL) permission to add to a file or directory.
/// The parameter is null.
// Token: 0x06002D5C RID: 11612 RVA: 0x00093A00 File Offset: 0x00091C00
[MonoTODO]
public void AddAccessRule(FileSystemAccessRule rule)
{
throw new NotImplementedException();
}
/// Removes all matching allow or deny access control list (ACL) permissions from the current file or directory.
/// true if the access rule was removed; otherwise, false.
/// A object that represents an access control list (ACL) permission to remove from a file or directory.
/// The parameter is null.
// Token: 0x06002D5D RID: 11613 RVA: 0x00093A08 File Offset: 0x00091C08
[MonoTODO]
public bool RemoveAccessRule(FileSystemAccessRule rule)
{
throw new NotImplementedException();
}
/// Removes all access control list (ACL) permissions for the specified user from the current file or directory.
/// A object that specifies a user whose access control list (ACL) permissions should be removed from a file or directory.
/// The parameter is null.
// Token: 0x06002D5E RID: 11614 RVA: 0x00093A10 File Offset: 0x00091C10
[MonoTODO]
public void RemoveAccessRuleAll(FileSystemAccessRule rule)
{
throw new NotImplementedException();
}
/// Removes a single matching allow or deny access control list (ACL) permission from the current file or directory.
/// A object that specifies a user whose access control list (ACL) permissions should be removed from a file or directory.
/// The parameter is null.
// Token: 0x06002D5F RID: 11615 RVA: 0x00093A18 File Offset: 0x00091C18
[MonoTODO]
public void RemoveAccessRuleSpecific(FileSystemAccessRule rule)
{
throw new NotImplementedException();
}
/// Adds the specified access control list (ACL) permission to the current file or directory and removes all matching ACL permissions.
/// A object that represents an access control list (ACL) permission to add to a file or directory.
/// The parameter is null.
// Token: 0x06002D60 RID: 11616 RVA: 0x00093A20 File Offset: 0x00091C20
[MonoTODO]
public void ResetAccessRule(FileSystemAccessRule rule)
{
throw new NotImplementedException();
}
/// Sets the specified access control list (ACL) permission for the current file or directory.
/// A object that represents an access control list (ACL) permission to set for a file or directory.
/// The parameter is null.
// Token: 0x06002D61 RID: 11617 RVA: 0x00093A28 File Offset: 0x00091C28
[MonoTODO]
public void SetAccessRule(FileSystemAccessRule rule)
{
throw new NotImplementedException();
}
/// Initializes a new instance of the class representing the specified audit rule for the specified user.
/// A new object representing the specified audit rule for the specified user.
/// An object that represents a user account.
/// An integer that specifies an access type.
/// true if the access rule is inherited; otherwise, false.
/// One of the values that specifies how to propagate access masks to child objects.
/// One of the values that specifies how to propagate Access Control Entries (ACEs) to child objects.
/// One of the values that specifies the type of auditing to perform.
/// The , , , or properties specify an invalid value.
/// The property is null. -or-The property is zero.
/// The property is neither of type , nor of a type such as that can be converted to type .
// 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);
}
/// Adds the specified audit rule to the current file or directory.
/// A object that represents an audit rule to add to a file or directory.
/// The parameter is null.
// Token: 0x06002D63 RID: 11619 RVA: 0x00093A40 File Offset: 0x00091C40
[MonoTODO]
public void AddAuditRule(FileSystemAuditRule rule)
{
throw new NotImplementedException();
}
/// Removes all matching allow or deny audit rules from the current file or directory.
/// true if the audit rule was removed; otherwise, false
/// A object that represents an audit rule to remove from a file or directory.
/// The parameter is null.
// Token: 0x06002D64 RID: 11620 RVA: 0x00093A48 File Offset: 0x00091C48
[MonoTODO]
public bool RemoveAuditRule(FileSystemAuditRule rule)
{
throw new NotImplementedException();
}
/// Removes all audit rules for the specified user from the current file or directory.
/// A object that specifies a user whose audit rules should be removed from a file or directory.
/// The parameter is null.
// Token: 0x06002D65 RID: 11621 RVA: 0x00093A50 File Offset: 0x00091C50
[MonoTODO]
public void RemoveAuditRuleAll(FileSystemAuditRule rule)
{
throw new NotImplementedException();
}
/// Removes a single matching allow or deny audit rule from the current file or directory.
/// A object that represents an audit rule to remove from a file or directory.
/// The parameter is null.
// Token: 0x06002D66 RID: 11622 RVA: 0x00093A58 File Offset: 0x00091C58
[MonoTODO]
public void RemoveAuditRuleSpecific(FileSystemAuditRule rule)
{
throw new NotImplementedException();
}
/// Sets the specified audit rule for the current file or directory.
/// A object that represents an audit rule to set for a file or directory.
/// The parameter is null.
// Token: 0x06002D67 RID: 11623 RVA: 0x00093A60 File Offset: 0x00091C60
[MonoTODO]
public void SetAuditRule(FileSystemAuditRule rule)
{
throw new NotImplementedException();
}
}
}