FileSystemRights Énumération

Définition

Définit les droits d'accès à utiliser lors de la création de règles d'accès et d'audit.Defines the access rights to use when creating access and audit rules.

Cette énumération a un attribut FlagsAttribute qui permet une combinaison au niveau du bit de ses valeurs membres.

public enum class FileSystemRights
[System.Flags]
public enum FileSystemRights
[System.Flags]
[System.Security.SecurityCritical]
public enum FileSystemRights
[<System.Flags>]
type FileSystemRights = 
[<System.Flags>]
[<System.Security.SecurityCritical>]
type FileSystemRights = 
Public Enum FileSystemRights
Héritage
FileSystemRights
Attributs

Champs

AppendData 4

Spécifie le droit d'ajouter des données à la fin d'un fichier.Specifies the right to append data to the end of a file.

ChangePermissions 262144

Spécifie le droit de modifier les règles de sécurité et d'audit associées à un fichier ou un dossier.Specifies the right to change the security and audit rules associated with a file or folder.

CreateDirectories 4

Spécifie le droit de créer un dossier. Ce droit nécessite la valeur Synchroniser.Specifies the right to create a folder This right requires the Synchronize value.

CreateFiles 2

Spécifie le droit de créer un fichier.Specifies the right to create a file. Ce droit nécessite la valeur Synchroniser.This right requires the Synchronize value.

Delete 65536

Spécifie le droit de supprimer un dossier ou un fichier.Specifies the right to delete a folder or file.

DeleteSubdirectoriesAndFiles 64

Spécifie le droit de supprimer un dossier et tous les fichiers contenus dans ce dossier.Specifies the right to delete a folder and any files contained within that folder.

ExecuteFile 32

Spécifie le droit d'exécuter un fichier d'application.Specifies the right to run an application file.

FullControl 2032127

Spécifie le droit d'exercer le contrôle total sur un dossier ou un fichier et de modifier les règles de contrôle d'accès et d'audit.Specifies the right to exert full control over a folder or file, and to modify access control and audit rules. Cette valeur représente le droit de tout faire avec un fichier et est la combinaison de tous les droits dans cette énumération.This value represents the right to do anything with a file and is the combination of all rights in this enumeration.

ListDirectory 1

Spécifie le droit de lire le contenu d'un répertoire.Specifies the right to read the contents of a directory.

Modify 197055

Spécifie le droit de lire, d'écrire, de lister le contenu d'un dossier, de supprimer des dossiers et des fichiers, et d'exécuter des fichiers d'application.Specifies the right to read, write, list folder contents, delete folders and files, and run application files. Ce droit inclut le droit ReadAndExecute, le droit Write et le droit Delete.This right includes the ReadAndExecute right, the Write right, and the Delete right.

Read 131209

Spécifie le droit d'ouvrir et de copier des dossiers ou des fichiers en lecture seule.Specifies the right to open and copy folders or files as read-only. Ce droit inclut le droit ReadData, le droit ReadExtendedAttributes, le droit ReadAttributes et le droit ReadPermissions.This right includes the ReadData right, ReadExtendedAttributes right, ReadAttributes right, and ReadPermissions right.

ReadAndExecute 131241

Spécifie le droit d'ouvrir et de copier des dossiers ou des fichiers en lecture seule et d'exécuter des fichiers d'application.Specifies the right to open and copy folders or files as read-only, and to run application files. Ce droit inclut le droit Read et le droit ExecuteFile.This right includes the Read right and the ExecuteFile right.

ReadAttributes 128

Spécifie le droit d'ouvrir et de copier les attributs du système de fichiers d'un dossier ou d'un fichier.Specifies the right to open and copy file system attributes from a folder or file. Par exemple, cette valeur spécifie le droit de consulter la date de création ou de modification d'un fichier.For example, this value specifies the right to view the file creation or modified date. Cela n’inclut pas le droit de lire les données, les attributs du système de fichiers étendus ou les règles d’accès et d’audit.This does not include the right to read data, extended file system attributes, or access and audit rules.

ReadData 1

Spécifie le droit d'ouvrir et de copier un fichier ou un dossier.Specifies the right to open and copy a file or folder. Cela n’inclut pas le droit de lire des attributs du système de fichiers, des attributs du système de fichiers étendus ou des règles d’accès et d’audit.This does not include the right to read file system attributes, extended file system attributes, or access and audit rules.

ReadExtendedAttributes 8

Spécifie le droit d'ouvrir et de copier des attributs du système de fichiers étendus d'un dossier ou d'un fichier.Specifies the right to open and copy extended file system attributes from a folder or file. Par exemple, cette valeur spécifie le droit de consulter les informations sur l'auteur et le contenu.For example, this value specifies the right to view author and content information. Cela n’inclut pas le droit de lire les données, les attributs du système de fichiers ou les règles d’accès et d’audit.This does not include the right to read data, file system attributes, or access and audit rules.

ReadPermissions 131072

Spécifie le droit d'ouvrir et de copier les règles d'accès et d'audit d'un dossier ou d'un fichier.Specifies the right to open and copy access and audit rules from a folder or file. Cela n'inclut pas le droit de lire les données, les attributs du système du fichier et les attributs du système de fichiers étendu.This does not include the right to read data, file system attributes, and extended file system attributes.

Synchronize 1048576

Spécifie si l'application peut attendre la synchronisation d'un handle de fichiers avec la fin d'une opération d'E/S.Specifies whether the application can wait for a file handle to synchronize with the completion of an I/O operation. Cette valeur est définie automatiquement quand l’accès est autorisé, et est automatiquement exclue quand l’accès est refusé.This value is automatically set when allowing access and automatically excluded when denying access.

TakeOwnership 524288

Spécifie le droit de modifier le propriétaire d'un dossier ou d'un fichier.Specifies the right to change the owner of a folder or file. Notez que les propriétaires d'une ressource ont l'accès complet à cette ressource.Note that owners of a resource have full access to that resource.

Traverse 32

Spécifie le droit de lister le contenu d'un dossier et d'exécuter des applications contenues dans ce dossier.Specifies the right to list the contents of a folder and to run applications contained within that folder.

Write 278

Spécifie le droit de créer des dossiers et des fichiers et d'ajouter ou de supprimer des données dans des fichiers.Specifies the right to create folders and files, and to add or remove data from files. Ce droit inclut le droit WriteData, le droit AppendData, le droit WriteExtendedAttributes et le droit WriteAttributes.This right includes the WriteData right, AppendData right, WriteExtendedAttributes right, and WriteAttributes right.

WriteAttributes 256

Spécifie le droit d'ouvrir des attributs du système de fichiers d'un dossier ou d'un fichier et d'y écrire.Specifies the right to open and write file system attributes to a folder or file. Cela n'inclut pas la capacité d'écrire des données, des attributs étendus ou des règles d'accès et d'audit.This does not include the ability to write data, extended attributes, or access and audit rules.

WriteData 2

Spécifie le droit d'ouvrir un fichier ou un dossier et d'y écrire.Specifies the right to open and write to a file or folder. Cela n'inclut pas le droit d'ouvrir des attributs du système de fichiers, des attributs du système de fichiers étendus ou des règles d'accès et d'audit et d'y écrire.This does not include the right to open and write file system attributes, extended file system attributes, or access and audit rules.

WriteExtendedAttributes 16

Spécifie le droit d'ouvrir des attributs du système de fichiers étendus d'un dossier ou d'un fichier et d'y écrire.Specifies the right to open and write extended file system attributes to a folder or file. Cela n'inclut pas la capacité d'écrire des données, des attributs ou des règles d'accès et d'audit.This does not include the ability to write data, attributes, or access and audit rules.

Exemples

L’exemple suivant utilise l' FileSystemRights énumération pour spécifier une règle d’accès, puis supprimer la règle d’accès d’un fichier.The following example uses the FileSystemRights enumeration to specify an access rule and then remove the access rule from a file. Vous devez entrer un compte d'utilisateur ou de groupe valide pour exécuter cet exemple.You must supply a valid user or group account to run this example.

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

Remarques

L' FileSystemRights énumération spécifie les actions du système de fichiers qui sont autorisées pour un compte d’utilisateur particulier et les actions du système de fichiers auditées pour un compte d’utilisateur particulier.The FileSystemRights enumeration specifies which file system actions are allowed for a particular user account and which file system actions are audited for a particular user account.

Utilisez l' FileSystemRights énumération lors de la création d’une règle d’accès avec la FileSystemAccessRule classe ou lors de la création d’une règle d’audit avec la FileSystemAuditRule classe.Use the FileSystemRights enumeration when creating an access rule with the FileSystemAccessRule class or when creating an audit rule with the FileSystemAuditRule class.

Cette énumération contient plusieurs valeurs de droits système granulaires et plusieurs valeurs qui sont une combinaison de ces valeurs granulaires.This enumeration contains several granular system rights values and several values that are a combination of those granular values. Il est plus facile d’utiliser les valeurs combinées telles que FullControl , Read et Write , plutôt que de spécifier chaque valeur de composant séparément.It is easier to use the combination values such as FullControl, Read, and Write, rather than specifying each component value separately.

Les CreateDirectories CreateFiles droits et requièrent le Synchronize droit.The CreateDirectories and CreateFiles rights require the Synchronize right. Si vous ne définissez pas explicitement la Synchronize valeur lors de la création d’un fichier ou d’un répertoire, elle est automatiquement définie pour vous.If you do not explicitly set the Synchronize value when creating a file or directory, it is set automatically for you.

S’applique à