FileSystemAccessRule Конструкторы

Определение

Инициализирует новый экземпляр класса FileSystemAccessRule.

Перегрузки

Имя Описание
FileSystemAccessRule(IdentityReference, FileSystemRights, AccessControlType)

Инициализирует новый экземпляр FileSystemAccessRule класса, используя ссылку на учетную запись пользователя, значение, указывающее тип операции, связанной с правилом доступа, и значение, указывающее, следует ли разрешать или запрещать операцию.

FileSystemAccessRule(String, FileSystemRights, AccessControlType)

Инициализирует новый экземпляр FileSystemAccessRule класса, используя имя учетной записи пользователя, значение, указывающее тип операции, связанной с правилом доступа, и значение, описывающее, следует ли разрешать или запрещать операцию.

FileSystemAccessRule(IdentityReference, FileSystemRights, InheritanceFlags, PropagationFlags, AccessControlType)

Инициализирует новый экземпляр FileSystemAccessRule класса, используя ссылку на учетную запись пользователя, значение, указывающее тип операции, связанной с правилом доступа, значение, определяющее, как наследуются права, значение, определяющее распространение прав, а также значение, указывающее, следует ли разрешать или запрещать операцию.

FileSystemAccessRule(String, FileSystemRights, InheritanceFlags, PropagationFlags, AccessControlType)

Инициализирует новый экземпляр FileSystemAccessRule класса, используя имя учетной записи пользователя, значение, указывающее тип операции, связанной с правилом доступа, значение, определяющее, как наследуются права, значение, определяющее распространение прав и значение, указывающее, следует ли разрешать или запрещать операцию.

FileSystemAccessRule(IdentityReference, FileSystemRights, AccessControlType)

Инициализирует новый экземпляр FileSystemAccessRule класса, используя ссылку на учетную запись пользователя, значение, указывающее тип операции, связанной с правилом доступа, и значение, указывающее, следует ли разрешать или запрещать операцию.

public:
 FileSystemAccessRule(System::Security::Principal::IdentityReference ^ identity, System::Security::AccessControl::FileSystemRights fileSystemRights, System::Security::AccessControl::AccessControlType type);
public FileSystemAccessRule(System.Security.Principal.IdentityReference identity, System.Security.AccessControl.FileSystemRights fileSystemRights, System.Security.AccessControl.AccessControlType type);
new System.Security.AccessControl.FileSystemAccessRule : System.Security.Principal.IdentityReference * System.Security.AccessControl.FileSystemRights * System.Security.AccessControl.AccessControlType -> System.Security.AccessControl.FileSystemAccessRule
Public Sub New (identity As IdentityReference, fileSystemRights As FileSystemRights, type As AccessControlType)

Параметры

identity
IdentityReference

Объект IdentityReference , инкапсулирующий ссылку на учетную запись пользователя.

fileSystemRights
FileSystemRights

Одно из FileSystemRights значений, указывающее тип операции, связанной с правилом доступа.

type
AccessControlType

Одно из AccessControlType значений, указывающее, следует ли разрешать или запрещать операцию.

Исключения

Параметр identity не IdentityReference является объектом.

Параметр identity имеет значение null.

Неправильное перечисление было передано параметру type .

Комментарии

Используйте этот конструктор для создания правила управления доступом, которое можно сохранить с помощью FileSecurity класса или DirectorySecurity класса. Правила управления доступом определяют права учетной записи пользователя, определяющие, какие действия разрешены или запрещены на компьютерах под управлением Microsoft Windows.

Применяется к

FileSystemAccessRule(String, FileSystemRights, AccessControlType)

Инициализирует новый экземпляр FileSystemAccessRule класса, используя имя учетной записи пользователя, значение, указывающее тип операции, связанной с правилом доступа, и значение, описывающее, следует ли разрешать или запрещать операцию.

public:
 FileSystemAccessRule(System::String ^ identity, System::Security::AccessControl::FileSystemRights fileSystemRights, System::Security::AccessControl::AccessControlType type);
public FileSystemAccessRule(string identity, System.Security.AccessControl.FileSystemRights fileSystemRights, System.Security.AccessControl.AccessControlType type);
new System.Security.AccessControl.FileSystemAccessRule : string * System.Security.AccessControl.FileSystemRights * System.Security.AccessControl.AccessControlType -> System.Security.AccessControl.FileSystemAccessRule
Public Sub New (identity As String, fileSystemRights As FileSystemRights, type As AccessControlType)

Параметры

identity
String

Имя учетной записи пользователя.

fileSystemRights
FileSystemRights

Одно из FileSystemRights значений, указывающее тип операции, связанной с правилом доступа.

type
AccessControlType

Одно из AccessControlType значений, указывающее, следует ли разрешать или запрещать операцию.

Исключения

Параметр identity имеет значение null.

Неправильное перечисление было передано параметру type .

Примеры

В следующем примере кода класс используется FileSecurity для добавления и удаления записи управления доступом (ACE) из файла. Чтобы запустить этот пример, необходимо указать допустимую учетную запись пользователя или группы.

using System;
using System.IO;
using System.Security.AccessControl;

namespace FileSystemExample
{
    class FileExample
    {
        public static void Main()
        {
            try
            {
                string fileName = "test.xml";

                Console.WriteLine($"Adding access control entry for {fileName}");

                // Add the access control entry to the file.
                AddFileSecurity(fileName, @"DomainName\AccountName",
                    FileSystemRights.ReadData, AccessControlType.Allow);

                Console.WriteLine($"Removing access control entry from {fileName}");

                // Remove the access control entry from the file.
                RemoveFileSecurity(fileName, @"DomainName\AccountName",
                    FileSystemRights.ReadData, AccessControlType.Allow);

                Console.WriteLine("Done.");
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }

        // Adds an ACL entry on the specified file for the specified account.
        public static void AddFileSecurity(string fileName, string account,
            FileSystemRights rights, AccessControlType controlType)
        {
            FileInfo fileInfo = new(fileName);
            FileSecurity fSecurity = fileInfo.GetAccessControl();

            // Add the FileSystemAccessRule to the security settings.
            fSecurity.AddAccessRule(new FileSystemAccessRule(account,
                rights, controlType));

            // Set the new access settings.
            fileInfo.SetAccessControl(fSecurity);
        }

        // Removes an ACL entry on the specified file for the specified account.
        public static void RemoveFileSecurity(string fileName, string account,
            FileSystemRights rights, AccessControlType controlType)
        {
            FileInfo fileInfo = new(fileName);
            FileSecurity fSecurity = fileInfo.GetAccessControl();

            // Remove the FileSystemAccessRule from the security settings.
            fSecurity.RemoveAccessRule(new FileSystemAccessRule(account,
                rights, controlType));

            // Set the new access settings.
            fileInfo.SetAccessControl(fSecurity);
        }
    }
}
Imports System.IO
Imports System.Security.AccessControl

Module FileExample

    Sub Main()
        Try
            Dim fileName As String = "test.xml"

            Console.WriteLine("Adding access control entry for " & fileName)

            ' Add the access control entry to the file.
            AddFileSecurity(fileName, "DomainName\AccountName",
                FileSystemRights.ReadData, AccessControlType.Allow)

            Console.WriteLine("Removing access control entry from " & fileName)

            ' Remove the access control entry from the file.
            RemoveFileSecurity(fileName, "DomainName\AccountName",
                FileSystemRights.ReadData, AccessControlType.Allow)

            Console.WriteLine("Done.")
        Catch e As Exception
            Console.WriteLine(e)
        End Try

    End Sub

    ' Adds an ACL entry on the specified file for the specified account.
    Sub AddFileSecurity(ByVal fileName As String, ByVal account As String,
        ByVal rights As FileSystemRights, ByVal controlType As AccessControlType)

        Dim fileInfo As New FileInfo(fileName)
        Dim fSecurity As FileSecurity = fileInfo.GetAccessControl()

        ' Add the FileSystemAccessRule to the security settings. 
        Dim accessRule As New FileSystemAccessRule(account, rights, controlType)

        fSecurity.AddAccessRule(accessRule)

        ' Set the new access settings.
        fileInfo.SetAccessControl(fSecurity)

    End Sub

    ' Removes an ACL entry on the specified file for the specified account.
    Sub RemoveFileSecurity(ByVal fileName As String, ByVal account As String,
        ByVal rights As FileSystemRights, ByVal controlType As AccessControlType)

        Dim fileInfo As New FileInfo(fileName)
        Dim fSecurity As FileSecurity = fileInfo.GetAccessControl()

        ' Remove the FileSystemAccessRule from the security settings. 
        fSecurity.RemoveAccessRule(New FileSystemAccessRule(account,
            rights, controlType))

        ' Set the new access settings.
        fileInfo.SetAccessControl(fSecurity)

    End Sub
End Module

Комментарии

Используйте этот конструктор для создания правила управления доступом, которое можно сохранить с помощью FileSecurity класса или DirectorySecurity класса. Правила управления доступом определяют права учетной записи пользователя, определяющие, какие действия разрешены или запрещены на компьютерах под управлением Microsoft Windows.

Параметр identity должен определить допустимую учетную запись на текущем компьютере или домене. Строка имеет следующую форму, где DOMAIN имя допустимого домена или компьютера и account является именем допустимой учетной записи пользователя на домене или компьютере: DOMAIN\account

Применяется к

FileSystemAccessRule(IdentityReference, FileSystemRights, InheritanceFlags, PropagationFlags, AccessControlType)

Инициализирует новый экземпляр FileSystemAccessRule класса, используя ссылку на учетную запись пользователя, значение, указывающее тип операции, связанной с правилом доступа, значение, определяющее, как наследуются права, значение, определяющее распространение прав, а также значение, указывающее, следует ли разрешать или запрещать операцию.

public:
 FileSystemAccessRule(System::Security::Principal::IdentityReference ^ identity, System::Security::AccessControl::FileSystemRights fileSystemRights, System::Security::AccessControl::InheritanceFlags inheritanceFlags, System::Security::AccessControl::PropagationFlags propagationFlags, System::Security::AccessControl::AccessControlType type);
public FileSystemAccessRule(System.Security.Principal.IdentityReference identity, System.Security.AccessControl.FileSystemRights fileSystemRights, System.Security.AccessControl.InheritanceFlags inheritanceFlags, System.Security.AccessControl.PropagationFlags propagationFlags, System.Security.AccessControl.AccessControlType type);
new System.Security.AccessControl.FileSystemAccessRule : System.Security.Principal.IdentityReference * System.Security.AccessControl.FileSystemRights * System.Security.AccessControl.InheritanceFlags * System.Security.AccessControl.PropagationFlags * System.Security.AccessControl.AccessControlType -> System.Security.AccessControl.FileSystemAccessRule
Public Sub New (identity As IdentityReference, fileSystemRights As FileSystemRights, inheritanceFlags As InheritanceFlags, propagationFlags As PropagationFlags, type As AccessControlType)

Параметры

identity
IdentityReference

Объект IdentityReference , инкапсулирующий ссылку на учетную запись пользователя.

fileSystemRights
FileSystemRights

Одно из FileSystemRights значений, указывающее тип операции, связанной с правилом доступа.

inheritanceFlags
InheritanceFlags

Одно из InheritanceFlags значений, указывающее, как маски доступа распространяются на дочерние объекты.

propagationFlags
PropagationFlags

Одно из значений PropagationFlags, указывающее, как контроль доступа записи (ACEs) распространяются на дочерние объекты.

type
AccessControlType

Одно из AccessControlType значений, указывающее, следует ли разрешать или запрещать операцию.

Исключения

Параметр identity не IdentityReference является объектом.

Параметр identity имеет значение null.

Неправильное перечисление было передано параметру type .

–или–

Неправильное перечисление было передано параметру inheritanceFlags .

–или–

Неправильное перечисление было передано параметру propagationFlags .

Комментарии

Используйте этот конструктор для создания правила управления доступом, которое можно сохранить с помощью FileSecurity класса или DirectorySecurity класса. Правила управления доступом определяют права учетной записи пользователя, определяющие, какие действия разрешены или запрещены на компьютерах под управлением Microsoft Windows.

Применяется к

FileSystemAccessRule(String, FileSystemRights, InheritanceFlags, PropagationFlags, AccessControlType)

Инициализирует новый экземпляр FileSystemAccessRule класса, используя имя учетной записи пользователя, значение, указывающее тип операции, связанной с правилом доступа, значение, определяющее, как наследуются права, значение, определяющее распространение прав и значение, указывающее, следует ли разрешать или запрещать операцию.

public:
 FileSystemAccessRule(System::String ^ identity, System::Security::AccessControl::FileSystemRights fileSystemRights, System::Security::AccessControl::InheritanceFlags inheritanceFlags, System::Security::AccessControl::PropagationFlags propagationFlags, System::Security::AccessControl::AccessControlType type);
public FileSystemAccessRule(string identity, System.Security.AccessControl.FileSystemRights fileSystemRights, System.Security.AccessControl.InheritanceFlags inheritanceFlags, System.Security.AccessControl.PropagationFlags propagationFlags, System.Security.AccessControl.AccessControlType type);
new System.Security.AccessControl.FileSystemAccessRule : string * System.Security.AccessControl.FileSystemRights * System.Security.AccessControl.InheritanceFlags * System.Security.AccessControl.PropagationFlags * System.Security.AccessControl.AccessControlType -> System.Security.AccessControl.FileSystemAccessRule
Public Sub New (identity As String, fileSystemRights As FileSystemRights, inheritanceFlags As InheritanceFlags, propagationFlags As PropagationFlags, type As AccessControlType)

Параметры

identity
String

Имя учетной записи пользователя.

fileSystemRights
FileSystemRights

Одно из FileSystemRights значений, указывающее тип операции, связанной с правилом доступа.

inheritanceFlags
InheritanceFlags

Одно из InheritanceFlags значений, указывающее, как маски доступа распространяются на дочерние объекты.

propagationFlags
PropagationFlags

Одно из значений PropagationFlags, указывающее, как контроль доступа записи (ACEs) распространяются на дочерние объекты.

type
AccessControlType

Одно из AccessControlType значений, указывающее, следует ли разрешать или запрещать операцию.

Исключения

Параметр identity имеет значение null.

Неправильное перечисление было передано параметру type .

–или–

Неправильное перечисление было передано параметру inheritanceFlags .

–или–

Неправильное перечисление было передано параметру propagationFlags .

Комментарии

Используйте этот конструктор для создания правила управления доступом, которое можно сохранить с помощью FileSecurity класса или DirectorySecurity класса. Правила управления доступом определяют права учетной записи пользователя, определяющие, какие действия разрешены или запрещены на компьютерах под управлением Microsoft Windows.

Параметр identity должен определить допустимую учетную запись на текущем компьютере или домене. Строка имеет следующую форму, где DOMAIN имя допустимого домена или компьютера и account является именем допустимой учетной записи пользователя на домене или компьютере: DOMAIN\account

Применяется к