Get-Acl
Obtiene el descriptor de seguridad de un recurso, como un archivo o una clave del Registro.
Sintaxis
Get-Acl
[[-Path] <String[]>]
[-Audit]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Acl
-InputObject <PSObject>
[-Audit]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Acl
[-LiteralPath <String[]>]
[-Audit]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Description
Este cmdlet solo está disponible en la plataforma Windows.
El cmdlet Get-Acl
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 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 directorio C:\Windows
.
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 archivos de .log
del directorio C:\Windows
cuyos nombres comienzan por s
.
Get-Acl C:\Windows\s*.log | Format-List -Property PSPath, Sddl
El comando usa el cmdlet Get-Acl
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 cmdlet Format-List
. 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 SDDL son valiosos para los administradores del sistema, ya que son cadenas de texto simples que contienen toda la información del 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 archivos de .log
del directorio C:\Windows
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 cmdlet ForEach-Object
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 cmdlet Get-Acl
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 comando Format-List
, 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 de subsistema de almacenamiento.
Get-Acl -InputObject (Get-StorageSubSystem -Name S087)
Parámetros
-Audit
Obtiene los datos de auditoría del descriptor de seguridad de la lista de control de acceso del 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 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 idioma 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
Obtiene solo 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 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. Escriba una variable que contenga el objeto o un comando que obtiene el objeto .
No se puede canalizar un objeto, aparte de una ruta de acceso, a Get-Acl
. En su lugar, use el parámetro InputObject explícitamente en el comando .
Este parámetro se presenta 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. No se interpreta ningún carácter como caracteres comodín. Si la ruta de acceso incluye caracteres de escape, escríbala entre comillas simples. Las comillas simples indican a PowerShell que no interprete ningún carácter como secuencias de escape.
Este parámetro se presenta en Windows PowerShell 3.0.
Tipo: | String[] |
Alias: | PSPath, LP |
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 caracteres comodín. Si omite el parámetro Path, Get-Acl
obtiene el descriptor de seguridad del directorio actual.
El nombre del 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 |
Entradas
Puede canalizar una cadena que contenga una ruta de acceso a este cmdlet.
Salidas
Este cmdlet devuelve un objeto que representa las ACL que obtiene. El tipo de objeto depende del tipo de ACL.
Notas
Este cmdlet solo está disponible en plataformas Windows.
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. El propietario del recurso controla la lista DACL.
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.
- Auditar: una lista (matriz) de entradas en la lista de control de acceso del sistema (SACL). SacL especifica los tipos de intentos de acceso para los que Windows genera registros de auditoría.
- sddl: descriptor de seguridad del recurso que se muestra en una sola cadena de texto en formato lenguaje de definición de descriptores de seguridad. PowerShell usa el método de GetSddlForm de descriptores de seguridad para obtener estos datos.
Dado que el sistema de archivos y los proveedores del registro admiten Get-Acl
, 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.