Compartir a través de


Get-Acl

Obtiene el descriptor de seguridad de un recurso, como una clave del Registro o archivo.

Sintaxis

Get-Acl
   [[-Path] <String[]>]
   [-Audit]
   [-AllCentralAccessPolicies]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-UseTransaction]
   [<CommonParameters>]
Get-Acl
   -InputObject <PSObject>
   [-Audit]
   [-AllCentralAccessPolicies]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-UseTransaction]
   [<CommonParameters>]
Get-Acl
   [-LiteralPath <String[]>]
   [-Audit]
   [-AllCentralAccessPolicies]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-UseTransaction]
   [<CommonParameters>]

Description

El Get-Acl cmdlet obtiene objetos que representan el descriptor de seguridad de un archivo o recurso. El descriptor de seguridad contiene las listas de control de acceso (ACL) del recurso. La ACL especifica los permisos que los usuarios y los grupos de usuarios tienen para acceder al recurso.

A partir de Windows PowerShell 3.0, puede usar el parámetro InputObject de Get-Acl para obtener el descriptor de seguridad de los objetos que no tienen una ruta de acceso.

Ejemplos

Ejemplo 1: Obtención de una ACL para una carpeta

En este ejemplo se obtiene el descriptor de seguridad del C:\Windows directorio.

Get-Acl C:\Windows

Ejemplo 2: Obtención de una ACL para una carpeta mediante caracteres comodín

En este ejemplo se obtiene la ruta de acceso de PowerShell y SDDL para todos los .log archivos del C:\Windows directorio cuyos nombres comienzan por s.

Get-Acl C:\Windows\s*.log | Format-List -Property PSPath, Sddl

El comando usa el Get-Acl cmdlet para obtener objetos que representan los descriptores de seguridad de cada archivo de registro. Usa un operador de canalización (|) para enviar los resultados al Format-List cmdlet . El comando usa el parámetro Property de Format-List para mostrar solo las propiedades PsPath y SDDL de cada objeto descriptor de seguridad.

Las listas se suelen usar en PowerShell, ya que los valores largos aparecen truncados en tablas.

Los valores de SDDL son valiosos para los administradores del sistema, ya que son cadenas de texto simples que contienen toda la información en el descriptor de seguridad. Por lo tanto, son fáciles de pasar y almacenar y se pueden analizar cuando sea necesario.

Ejemplo 3: Obtención del recuento de entradas de auditoría de una ACL

En este ejemplo se obtienen los descriptores de seguridad de los .log archivos del C:\Windows directorio cuyos nombres comienzan por s.

Get-Acl C:\Windows\s*.log -Audit | ForEach-Object { $_.Audit.Count }

Usa el parámetro Audit para obtener los registros de auditoría del SACL en el descriptor de seguridad. A continuación, usa el ForEach-Object cmdlet para contar el número de registros de auditoría asociados a cada archivo. El resultado es una lista de números que representan el número de registros de auditoría de cada archivo de registro.

Ejemplo 4: Obtención de una ACL para una clave del Registro

En este ejemplo se usa el Get-Acl cmdlet para obtener el descriptor de seguridad de la subclave Control (HKLM:\SYSTEM\CurrentControlSet\Control) del Registro.

Get-Acl -Path HKLM:\System\CurrentControlSet\Control | Format-List

El parámetro Path especifica la subclave Control. El operador de canalización (|) pasa el descriptor de seguridad que Get-Acl obtiene al Format-List comando , que da formato a las propiedades del descriptor de seguridad como una lista para que sean fáciles de leer.

Ejemplo 5: Obtención de una ACL mediante **InputObject**

En este ejemplo se usa el parámetro InputObject de Get-Acl para obtener el descriptor de seguridad de un objeto del subsistema de almacenamiento.

Get-Acl -InputObject (Get-StorageSubSystem -Name S087)

Parámetros

-AllCentralAccessPolicies

Obtiene información sobre todas las directivas de acceso central que están habilitadas en el equipo.

A partir de Windows Server 2012, los administradores pueden usar Active Directory y directiva de grupo para establecer directivas de acceso central para usuarios y grupos. Para obtener más información, consulte Control de acceso dinámico: Información general sobre escenarios.

Este parámetro se incorporó en Windows PowerShell 3.0.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Audit

Obtiene los datos de auditoría para el descriptor de seguridad de la lista de control de acceso de sistema (SACL).

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Exclude

Omite los elementos especificados. El valor de este parámetro califica el parámetro Path . Escriba un elemento o patrón de ruta de acceso, como *.txt. Se permiten los caracteres comodín.

Tipo:String[]
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:True

-Filter

Especifica un filtro en el formato o el lenguaje del proveedor. El valor de este parámetro califica el parámetro Path . La sintaxis del filtro, incluido el uso de caracteres comodín, depende del proveedor. Los filtros son más eficaces que otros parámetros, ya que el proveedor los aplica al obtener los objetos, en lugar de que PowerShell filtre los objetos una vez recuperados.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:True

-Include

Solo obtiene los elementos especificados. El valor de este parámetro califica el parámetro Path . Escriba un elemento o patrón de ruta de acceso, como *.txt. Se permiten los caracteres comodín.

Tipo:String[]
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:True

-InputObject

Obtiene el descriptor de seguridad para el objeto especificado. Introduzca una variable que contenga el objeto o un comando que obtenga el objeto.

No se puede canalizar un objeto, que no sea una ruta de acceso, a Get-Acl. En su lugar, use el parámetro InputObject explícitamente en el comando .

Este parámetro se incorporó en Windows PowerShell 3.0.

Tipo:PSObject
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-LiteralPath

Especifica la ruta de acceso a un recurso. A diferencia de Path, el valor del parámetro LiteralPath se usa exactamente como se escribe. Ninguno de los caracteres se interpreta como caracteres comodín. Si la ruta de acceso contiene caracteres de escape, escríbalos entre comillas simples. Las comillas simples indican a PowerShell que no interprete ningún carácter como secuencias de escape.

Este parámetro se incorporó en Windows PowerShell 3.0.

Tipo:String[]
Alias:PSPath
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Path

Especifica la ruta de acceso a un recurso. Get-Acl obtiene el descriptor de seguridad del recurso indicado por la ruta de acceso. Se permiten los caracteres comodín. Si omite el parámetro Path , Get-Acl obtiene el descriptor de seguridad del directorio actual.

El nombre de parámetro ("Path") es opcional.

Tipo:String[]
Posición:1
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:True

-UseTransaction

Incluye el comando en la transacción activa. Este parámetro solo es válido cuando hay una transacción en curso. Para obtener más información, consulte about_Transactions.

Tipo:SwitchParameter
Alias:usetx
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

String

Puede canalizar una cadena que contenga una ruta de acceso a este cmdlet.

Salidas

FileSecurity

DirectorySecurity

RegistrySecurity

Este cmdlet devuelve un objeto que representa las ACL que obtiene. El tipo de objeto depende del tipo de ACL.

Notas

De forma predeterminada, Get-Acl muestra la ruta de acceso de PowerShell al recurso (<provider>::<resource-path>), el propietario del recurso y "Access", una lista (matriz) de las entradas del control de acceso en la lista de control de acceso discrecional (DACL) para el recurso. La lista DACL se controla mediante el propietario del recurso.

Al dar formato al resultado como una lista, (Get-Acl | Format-List), además de la ruta de acceso, el propietario y la lista de acceso, PowerShell muestra las siguientes propiedades y valores de propiedad:

  • Grupo: el grupo de seguridad del propietario.
  • Auditoría: lista (matriz) de entradas en la lista de control de acceso del sistema (SACL). La SACL especifica los tipos de intentos de acceso para los que Windows genera los registros de auditoría.
  • Sddl: descriptor de seguridad del recurso mostrado en una sola cadena de texto en formato lenguaje de definición de descriptores de seguridad. PowerShell usa el método GetSddlForm de descriptores de seguridad para obtener estos datos.

Dado Get-Acl que es compatible con el sistema de archivos y los proveedores del registro, puede usar Get-Acl para ver la ACL de objetos del sistema de archivos, como archivos y directorios, y objetos del Registro, como claves del Registro y entradas.