FileSystemAccessRule Costruttori

Definizione

Inizializza una nuova istanza della classe FileSystemAccessRule.

Overload

Nome Descrizione
FileSystemAccessRule(IdentityReference, FileSystemRights, AccessControlType)

Inizializza una nuova istanza della FileSystemAccessRule classe utilizzando un riferimento a un account utente, un valore che specifica il tipo di operazione associata alla regola di accesso e un valore che specifica se consentire o negare l'operazione.

FileSystemAccessRule(String, FileSystemRights, AccessControlType)

Inizializza una nuova istanza della FileSystemAccessRule classe utilizzando il nome di un account utente, un valore che specifica il tipo di operazione associata alla regola di accesso e un valore che descrive se consentire o negare l'operazione.

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

Inizializza una nuova istanza della FileSystemAccessRule classe utilizzando un riferimento a un account utente, un valore che specifica il tipo di operazione associata alla regola di accesso, un valore che determina come vengono ereditati i diritti, un valore che determina la modalità di propagazione dei diritti e un valore che specifica se consentire o negare l'operazione.

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

Inizializza una nuova istanza della FileSystemAccessRule classe utilizzando il nome di un account utente, un valore che specifica il tipo di operazione associata alla regola di accesso, un valore che determina come vengono ereditati i diritti, un valore che determina la modalità di propagazione dei diritti e un valore che specifica se consentire o negare l'operazione.

FileSystemAccessRule(IdentityReference, FileSystemRights, AccessControlType)

Inizializza una nuova istanza della FileSystemAccessRule classe utilizzando un riferimento a un account utente, un valore che specifica il tipo di operazione associata alla regola di accesso e un valore che specifica se consentire o negare l'operazione.

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)

Parametri

identity
IdentityReference

Oggetto IdentityReference che incapsula un riferimento a un account utente.

fileSystemRights
FileSystemRights

Uno dei FileSystemRights valori che specifica il tipo di operazione associata alla regola di accesso.

type
AccessControlType

Uno dei AccessControlType valori che specifica se consentire o negare l'operazione.

Eccezioni

Il identity parametro non è un IdentityReference oggetto .

Il identity parametro è null.

Al parametro è stata passata type un'enumerazione non corretta.

Commenti

Usare questo costruttore per creare una regola di controllo di accesso permanente usando la FileSecurity classe o DirectorySecurity . Le regole di controllo di accesso definiscono i diritti dell'account utente che determinano quali azioni sono consentite o non consentite nei computer che eseguono Microsoft Windows.

Si applica a

FileSystemAccessRule(String, FileSystemRights, AccessControlType)

Inizializza una nuova istanza della FileSystemAccessRule classe utilizzando il nome di un account utente, un valore che specifica il tipo di operazione associata alla regola di accesso e un valore che descrive se consentire o negare l'operazione.

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)

Parametri

identity
String

Nome di un account utente.

fileSystemRights
FileSystemRights

Uno dei FileSystemRights valori che specifica il tipo di operazione associata alla regola di accesso.

type
AccessControlType

Uno dei AccessControlType valori che specifica se consentire o negare l'operazione.

Eccezioni

Il identity parametro è null.

Al parametro è stata passata type un'enumerazione non corretta.

Esempio

Nell'esempio di codice seguente viene usata la FileSecurity classe per aggiungere e quindi rimuovere una voce di controllo di accesso (ACE) da un file. Per eseguire questo esempio, è necessario specificare un account utente o gruppo valido.

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

Commenti

Usare questo costruttore per creare una regola di controllo di accesso permanente usando la FileSecurity classe o DirectorySecurity . Le regole di controllo di accesso definiscono i diritti dell'account utente che determinano quali azioni sono consentite o non consentite nei computer che eseguono Microsoft Windows.

Il identity parametro deve identificare un account valido nel computer o nel dominio corrente. La stringa assume il formato seguente, dove DOMAIN è il nome di un dominio o di un nome computer valido e account è il nome di un account utente valido in un dominio o in un computer: DOMAIN\account.

Si applica a

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

Inizializza una nuova istanza della FileSystemAccessRule classe utilizzando un riferimento a un account utente, un valore che specifica il tipo di operazione associata alla regola di accesso, un valore che determina come vengono ereditati i diritti, un valore che determina la modalità di propagazione dei diritti e un valore che specifica se consentire o negare l'operazione.

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)

Parametri

identity
IdentityReference

Oggetto IdentityReference che incapsula un riferimento a un account utente.

fileSystemRights
FileSystemRights

Uno dei FileSystemRights valori che specifica il tipo di operazione associata alla regola di accesso.

inheritanceFlags
InheritanceFlags

Uno dei InheritanceFlags valori che specifica la modalità di propagazione delle maschere di accesso agli oggetti figlio.

propagationFlags
PropagationFlags

Uno dei valori PropagationFlags che specifica come vengono propagate Controllo di accesso voci (ACL) agli oggetti figlio.

type
AccessControlType

Uno dei AccessControlType valori che specifica se consentire o negare l'operazione.

Eccezioni

Il identity parametro non è un IdentityReference oggetto .

Il identity parametro è null.

Al parametro è stata passata type un'enumerazione non corretta.

oppure

Al parametro è stata passata inheritanceFlags un'enumerazione non corretta.

oppure

Al parametro è stata passata propagationFlags un'enumerazione non corretta.

Commenti

Usare questo costruttore per creare una regola di controllo di accesso permanente usando la FileSecurity classe o DirectorySecurity . Le regole di controllo di accesso definiscono i diritti dell'account utente che determinano quali azioni sono consentite o non consentite nei computer che eseguono Microsoft Windows.

Si applica a

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

Inizializza una nuova istanza della FileSystemAccessRule classe utilizzando il nome di un account utente, un valore che specifica il tipo di operazione associata alla regola di accesso, un valore che determina come vengono ereditati i diritti, un valore che determina la modalità di propagazione dei diritti e un valore che specifica se consentire o negare l'operazione.

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)

Parametri

identity
String

Nome di un account utente.

fileSystemRights
FileSystemRights

Uno dei FileSystemRights valori che specifica il tipo di operazione associata alla regola di accesso.

inheritanceFlags
InheritanceFlags

Uno dei InheritanceFlags valori che specifica la modalità di propagazione delle maschere di accesso agli oggetti figlio.

propagationFlags
PropagationFlags

Uno dei valori PropagationFlags che specifica come vengono propagate Controllo di accesso voci (ACL) agli oggetti figlio.

type
AccessControlType

Uno dei AccessControlType valori che specifica se consentire o negare l'operazione.

Eccezioni

Il identity parametro è null.

Al parametro è stata passata type un'enumerazione non corretta.

oppure

Al parametro è stata passata inheritanceFlags un'enumerazione non corretta.

oppure

Al parametro è stata passata propagationFlags un'enumerazione non corretta.

Commenti

Usare questo costruttore per creare una regola di controllo di accesso permanente usando la FileSecurity classe o DirectorySecurity . Le regole di controllo di accesso definiscono i diritti dell'account utente che determinano quali azioni sono consentite o non consentite nei computer che eseguono Microsoft Windows.

Il identity parametro deve identificare un account valido nel computer o nel dominio corrente. La stringa assume il formato seguente, dove DOMAIN è il nome di un dominio o di un nome computer valido e account è il nome di un account utente valido in un dominio o in un computer: DOMAIN\account.

Si applica a