FileSystemRights FileSystemRights FileSystemRights FileSystemRights Enum

Definición

Define los derechos de acceso que se van a utilizar al crear reglas de acceso y de auditoría.Defines the access rights to use when creating access and audit rules.

Esta enumeración tiene el atributo FlagsAttribute, que permite una combinación bit a bit de sus valores de miembro.

public enum class FileSystemRights
[System.Flags]
[System.Security.SecurityCritical]
public enum FileSystemRights
type FileSystemRights = 
Public Enum FileSystemRights
Herencia
FileSystemRightsFileSystemRightsFileSystemRightsFileSystemRights
Atributos

Campos

AppendData AppendData AppendData AppendData 4

Especifica el derecho para anexar los datos al final de un archivo.Specifies the right to append data to the end of a file.

ChangePermissions ChangePermissions ChangePermissions ChangePermissions 262144

Especifica el derecho para cambiar la seguridad y las reglas de auditoría asociadas a un archivo o carpeta.Specifies the right to change the security and audit rules associated with a file or folder.

CreateDirectories CreateDirectories CreateDirectories CreateDirectories 4

Especifica el derecho para crear una carpeta. Este derecho requiere el valor Synchronize.Specifies the right to create a folder This right requires the Synchronize value.

CreateFiles CreateFiles CreateFiles CreateFiles 2

Especifica el derecho para crear un archivo.Specifies the right to create a file. Este derecho requiere el valor Synchronize.This right requires the Synchronize value.

Delete Delete Delete Delete 65536

Especifica el derecho para eliminar una carpeta o archivo.Specifies the right to delete a folder or file.

DeleteSubdirectoriesAndFiles DeleteSubdirectoriesAndFiles DeleteSubdirectoriesAndFiles DeleteSubdirectoriesAndFiles 64

Especifica el derecho para eliminar una carpeta y cualquier archivo contenido dentro de esa carpeta.Specifies the right to delete a folder and any files contained within that folder.

ExecuteFile ExecuteFile ExecuteFile ExecuteFile 32

Especifica el derecho para ejecutar un archivo de aplicación.Specifies the right to run an application file.

FullControl FullControl FullControl FullControl 2032127

Especifica el derecho para ejercer el control completo sobre una carpeta o archivo y para modificar las reglas de control de acceso y de auditoría.Specifies the right to exert full control over a folder or file, and to modify access control and audit rules. Este valor representa el derecho para hacer operaciones con un archivo y es la combinación de todos los derechos en esta enumeración.This value represents the right to do anything with a file and is the combination of all rights in this enumeration.

ListDirectory ListDirectory ListDirectory ListDirectory 1

Especifica el derecho para leer el contenido de un directorio.Specifies the right to read the contents of a directory.

Modify Modify Modify Modify 197055

Especifica el derecho para leer, escribir, mostrar el contenido de una carpeta, eliminar carpetas y archivos y ejecutar los archivos de aplicación.Specifies the right to read, write, list folder contents, delete folders and files, and run application files. Este derecho incluye los derechos: ReadAndExecute, Write y Delete.This right includes the ReadAndExecute right, the Write right, and the Delete right.

Read Read Read Read 131209

Especifica el derecho para abrir y copiar carpetas o archivos como de sólo lectura.Specifies the right to open and copy folders or files as read-only. Este derecho incluye los derechos: ReadData, ReadExtendedAttributes, ReadAttributes y ReadPermissions.This right includes the ReadData right, ReadExtendedAttributes right, ReadAttributes right, and ReadPermissions right.

ReadAndExecute ReadAndExecute ReadAndExecute ReadAndExecute 131241

Especifica el derecho para abrir y copiar carpetas o archivos como de sólo lectura y para ejecutar los archivos de aplicación.Specifies the right to open and copy folders or files as read-only, and to run application files. Este derecho incluye los derechos: Read y ExecuteFile.This right includes the Read right and the ExecuteFile right.

ReadAttributes ReadAttributes ReadAttributes ReadAttributes 128

Especifica el derecho para abrir y copiar los atributos del sistema de archivos de una carpeta o archivo.Specifies the right to open and copy file system attributes from a folder or file. Por ejemplo, este valor especifica el derecho para ver la fecha de creación de archivos o la fecha modificada.For example, this value specifies the right to view the file creation or modified date. Esto no incluye el derecho para leer datos, atributos del sistema de archivos extendidos o reglas de acceso y de auditoría.This does not include the right to read data, extended file system attributes, or access and audit rules.

ReadData ReadData ReadData ReadData 1

Especifica el derecho para abrir y copiar un archivo o carpeta.Specifies the right to open and copy a file or folder. Esto no incluye el derecho para leer atributos del sistema de archivos, atributos del sistema de archivos extendidos o reglas de acceso y de auditoría.This does not include the right to read file system attributes, extended file system attributes, or access and audit rules.

ReadExtendedAttributes ReadExtendedAttributes ReadExtendedAttributes ReadExtendedAttributes 8

Especifica el derecho para abrir y copiar los atributos del sistema de archivos extendidos de una carpeta o archivo.Specifies the right to open and copy extended file system attributes from a folder or file. Por ejemplo, este valor especifica el derecho para ver información sobre el autor y el contenido.For example, this value specifies the right to view author and content information. Esto no incluye el derecho para leer datos, atributos del sistema de archivos o reglas de acceso y de auditoría.This does not include the right to read data, file system attributes, or access and audit rules.

ReadPermissions ReadPermissions ReadPermissions ReadPermissions 131072

Especifica el derecho para abrir y copiar reglas de acceso y de auditoría de una carpeta o archivo.Specifies the right to open and copy access and audit rules from a folder or file. Esto no incluye el derecho para leer datos, atributos del sistema de archivos y atributos del sistema de archivos extendidos.This does not include the right to read data, file system attributes, and extended file system attributes.

Synchronize Synchronize Synchronize Synchronize 1048576

Especifica si la aplicación puede esperar a que se sincronice un identificador de archivos con la realización de una operación de E/S.Specifies whether the application can wait for a file handle to synchronize with the completion of an I/O operation. Este valor se establece de forma automática al conceder acceso y se excluye de forma automática al denegarlo.This value is automatically set when allowing access and automatically excluded when denying access.

TakeOwnership TakeOwnership TakeOwnership TakeOwnership 524288

Especifica el derecho para cambiar el propietario de una carpeta o archivo.Specifies the right to change the owner of a folder or file. Observe que los propietarios de un recurso tienen acceso completo a ese recurso.Note that owners of a resource have full access to that resource.

Traverse Traverse Traverse Traverse 32

Especifica el derecho para mostrar el contenido de una carpeta y para ejecutar aplicaciones contenidas en esa carpeta.Specifies the right to list the contents of a folder and to run applications contained within that folder.

Write Write Write Write 278

Especifica el derecho para crear carpetas y archivos y para agregar o quitar datos de los archivos.Specifies the right to create folders and files, and to add or remove data from files. Este derecho incluye los derechos: WriteData, AppendData, WriteExtendedAttributes y WriteAttributes.This right includes the WriteData right, AppendData right, WriteExtendedAttributes right, and WriteAttributes right.

WriteAttributes WriteAttributes WriteAttributes WriteAttributes 256

Especifica el derecho para abrir y escribir los atributos del sistema de archivos a una carpeta o archivo.Specifies the right to open and write file system attributes to a folder or file. Esto no incluye la capacidad para escribir datos, atributos extendidos o reglas de acceso y de auditoría.This does not include the ability to write data, extended attributes, or access and audit rules.

WriteData WriteData WriteData WriteData 2

Especifica el derecho para abrir y escribir un archivo o carpeta.Specifies the right to open and write to a file or folder. Esto no incluye el derecho para abrir y escribir atributos del sistema de archivos, atributos del sistema de archivos extendidos o reglas de acceso y de auditoría.This does not include the right to open and write file system attributes, extended file system attributes, or access and audit rules.

WriteExtendedAttributes WriteExtendedAttributes WriteExtendedAttributes WriteExtendedAttributes 16

Especifica el derecho para abrir y escribir los atributos del sistema de archivos extendidos a una carpeta o archivo.Specifies the right to open and write extended file system attributes to a folder or file. Esto no incluye la capacidad para escribir datos, atributos o reglas de acceso y de auditoría.This does not include the ability to write data, attributes, or access and audit rules.

Ejemplos

En el ejemplo siguiente se FileSystemRights usa la enumeración para especificar una regla de acceso y, a continuación, quitar la regla de acceso de un archivo.The following example uses the FileSystemRights enumeration to specify an access rule and then remove the access rule from a file. Para ejecutar este ejemplo, debe proporcionar una cuenta de usuario o grupo válida.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

Comentarios

La FileSystemRights enumeración especifica qué acciones del sistema de archivos se permiten para una cuenta de usuario determinada y qué acciones del sistema de archivos se auditan para una cuenta de usuario determinada.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.

Use la FileSystemRights enumeración al crear una regla de acceso FileSystemAccessRule con la clase o cuando cree una regla de FileSystemAuditRule auditoría con la clase.Use the FileSystemRights enumeration when creating an access rule with the FileSystemAccessRule class or when creating an audit rule with the FileSystemAuditRule class.

Esta enumeración contiene varios valores de derechos del sistema granulados y varios valores que son una combinación de esos valores granulares.This enumeration contains several granular system rights values and several values that are a combination of those granular values. Es más fácil usar los valores de combinación como FullControl, Ready Write, en lugar de especificar cada valor de componente por separado.It is easier to use the combination values such as FullControl, Read, and Write, rather than specifying each component value separately.

Los CreateDirectories derechos CreateFiles y requieren el Synchronize derecho.The CreateDirectories and CreateFiles rights require the Synchronize right. Si no establece explícitamente el Synchronize valor al crear un archivo o directorio, se establece automáticamente.If you do not explicitly set the Synchronize value when creating a file or directory, it is set automatically for you.

Se aplica a