FileSystemAccessRule Costruttori

Definizione

Inizializza una nuova istanza della classe FileSystemAccessRule.

Overload

FileSystemAccessRule(IdentityReference, FileSystemRights, AccessControlType)

Inizializza una nuova istanza della classe FileSystemAccessRule 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 meno l'esecuzione dell'operazione.

FileSystemAccessRule(String, FileSystemRights, AccessControlType)

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

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

Inizializza una nuova istanza della classe FileSystemAccessRule 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 come vengono propagati i diritti e un valore che specifica se consentire o meno l'esecuzione dell'operazione.

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

Inizializza una nuova istanza della classe FileSystemAccessRule 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 come vengono propagati i diritti e un valore che specifica se consentire o meno l'esecuzione dell'operazione.

FileSystemAccessRule(IdentityReference, FileSystemRights, AccessControlType)

Inizializza una nuova istanza della classe FileSystemAccessRule 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 meno l'esecuzione dell'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 valori FileSystemRights che specifica il tipo di operazione associata alla regola di accesso.

type
AccessControlType

Uno dei valori AccessControlType che specifica se consentire o meno l'esecuzione dell'operazione.

Eccezioni

Il parametro identity non è un oggetto IdentityReference.

Il valore del parametro identity è null.

È stata passata un'enumerazione errata al parametro type.

Commenti

Usare questo costruttore per creare una regola di controllo di accesso che è possibile mantenere 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 classe FileSystemAccessRule utilizzando il nome di un account utente, un valore che specifica il tipo di operazione associata alla regola di accesso e un valore che indica se consentire o meno l'esecuzione dell'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 valori FileSystemRights che specifica il tipo di operazione associata alla regola di accesso.

type
AccessControlType

Uno dei valori AccessControlType che specifica se consentire o meno l'esecuzione dell'operazione.

Eccezioni

Il valore del parametro identity è null.

È stata passata un'enumerazione errata al parametro type.

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. È necessario specificare un utente valido o un account di gruppo per eseguire questo esempio.

using namespace System;
using namespace System::IO;
using namespace System::Security::AccessControl;

// Adds an ACL entry on the specified file for the specified account.

void AddFileSecurity(String^ fileName, String^ account, 
                        FileSystemRights rights, AccessControlType controlType)
{
    // Get a FileSecurity object that represents the 
    // current security settings.
    FileSecurity^ fSecurity = File::GetAccessControl(fileName);

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

    // Set the new access settings.
    File::SetAccessControl(fileName, fSecurity);
}

// Removes an ACL entry on the specified file for the specified account.

void RemoveFileSecurity(String^ fileName, String^ account, 
                        FileSystemRights rights, AccessControlType controlType)
{

    // Get a FileSecurity object that represents the 
    // current security settings.
    FileSecurity^ fSecurity = File::GetAccessControl(fileName);

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

    // Set the new access settings.
    File::SetAccessControl(fileName, fSecurity);
}

int main()
{
    try
    {
        String^ fileName = "test.xml";

        Console::WriteLine("Adding access control entry for " + fileName);

        // Add the access control entry to the file.
        AddFileSecurity(fileName, "MYDOMAIN\\MyAccount", 
            FileSystemRights::ReadData, AccessControlType::Allow);

        Console::WriteLine("Removing access control entry from " + fileName);

        // Remove the access control entry from the file.
        RemoveFileSecurity(fileName, "MYDOMAIN\\MyAccount", 
            FileSystemRights::ReadData, AccessControlType::Allow);

        Console::WriteLine("Done.");
    }
    catch (Exception^ ex)
    {
        Console::WriteLine(ex->Message);
    }
}
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)
        {

            // Get a FileSecurity object that represents the
            // current security settings.
            FileSecurity fSecurity = File.GetAccessControl(fileName);

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

            // Set the new access settings.
            File.SetAccessControl(fileName, 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)
        {

            // Get a FileSecurity object that represents the
            // current security settings.
            FileSecurity fSecurity = File.GetAccessControl(fileName);

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

            // Set the new access settings.
            File.SetAccessControl(fileName, 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)
  
        ' Get a FileSecurity object that represents the 
        ' current security settings.
        Dim fSecurity As FileSecurity = File.GetAccessControl(fileName)

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

        fSecurity.AddAccessRule(accessRule)

        ' Set the new access settings.
        File.SetAccessControl(fileName, 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)

        ' Get a FileSecurity object that represents the 
        ' current security settings.
        Dim fSecurity As FileSecurity = File.GetAccessControl(fileName)

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

        ' Set the new access settings.
        File.SetAccessControl(fileName, fSecurity)

    End Sub
End Module

Commenti

Usare questo costruttore per creare una regola di controllo di accesso che è possibile mantenere 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 accetta il modulo seguente, dove DOMAIN è il nome di un dominio o di un nome computer valido ed 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 classe FileSystemAccessRule 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 come vengono propagati i diritti e un valore che specifica se consentire o meno l'esecuzione dell'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 valori FileSystemRights che specifica il tipo di operazione associata alla regola di accesso.

inheritanceFlags
InheritanceFlags

Uno dei valori InheritanceFlags che specificano come vengono propagate le maschere di accesso agli oggetti figlio.

propagationFlags
PropagationFlags

Uno dei valori PropagationFlags che specificano come vengono propagate le voci di controllo di accesso agli oggetti figlio.

type
AccessControlType

Uno dei valori AccessControlType che specifica se consentire o meno l'esecuzione dell'operazione.

Eccezioni

Il parametro identity non è un oggetto IdentityReference.

Il valore del parametro identity è null.

È stata passata un'enumerazione errata al parametro type.

-oppure-

È stata passata un'enumerazione errata al parametro inheritanceFlags.

-oppure-

È stata passata un'enumerazione errata al parametro propagationFlags.

Commenti

Usare questo costruttore per creare una regola di controllo di accesso che è possibile mantenere 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 classe FileSystemAccessRule 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 come vengono propagati i diritti e un valore che specifica se consentire o meno l'esecuzione dell'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 valori FileSystemRights che specifica il tipo di operazione associata alla regola di accesso.

inheritanceFlags
InheritanceFlags

Uno dei valori InheritanceFlags che specificano come vengono propagate le maschere di accesso agli oggetti figlio.

propagationFlags
PropagationFlags

Uno dei valori PropagationFlags che specificano come vengono propagate le voci di controllo di accesso agli oggetti figlio.

type
AccessControlType

Uno dei valori AccessControlType che specifica se consentire o meno l'esecuzione dell'operazione.

Eccezioni

Il valore del parametro identity è null.

È stata passata un'enumerazione errata al parametro type.

-oppure-

È stata passata un'enumerazione errata al parametro inheritanceFlags.

-oppure-

È stata passata un'enumerazione errata al parametro propagationFlags.

Commenti

Usare questo costruttore per creare una regola di controllo di accesso che è possibile mantenere 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 accetta il modulo seguente, dove DOMAIN è il nome di un dominio o di un nome computer valido ed account è il nome di un account utente valido in un dominio o in un computer: DOMAIN\account.

Si applica a