Get-Acl
Obtém o descritor de segurança de um recurso, como um arquivo ou chave do Registro.
Sintaxe
ByPath (Padrão)
Get-Acl
[[-Path] <String[]>]
[-Audit]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
ByInputObject
Get-Acl
-InputObject <PSObject>
[-Audit]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
ByLiteralPath
Get-Acl
[-LiteralPath <String[]>]
[-Audit]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Description
Este cmdlet só está disponível na plataforma Windows.
O cmdlet Get-Acl obtém objetos que representam o descritor de segurança de um arquivo ou recurso. O descritor de segurança contém as ACLs (listas de controle de acesso) do recurso. A ACL especifica as permissões que os usuários e grupos de usuários têm para acessar o recurso.
A partir do Windows PowerShell 3.0, você pode usar o parâmetro InputObject de Get-Acl para obter o descritor de segurança de objetos que não têm um caminho.
Exemplos
Exemplo 1- Obter uma ACL para uma pasta
Este exemplo obtém o descritor de segurança do diretório C:\Windows.
Get-Acl C:\Windows
Exemplo 2 – Obter uma ACL para uma pasta usando curingas
Este exemplo obtém o caminho do PowerShell e o SDDL para todos os arquivos .log no diretório C:\Windows cujos nomes começam com s.
Get-Acl C:\Windows\s*.log | Format-List -Property PSPath, Sddl
O comando usa o cmdlet Get-Acl para obter objetos que representam os descritores de segurança de cada arquivo de log. Ele usa um operador de pipeline (|) para enviar os resultados para o cmdlet Format-List. O comando usa o parâmetro Property de Format-List para exibir apenas as propriedades PSPath e SDDL de cada objeto descritor de segurança.
As listas geralmente são usadas no PowerShell, pois valores longos aparecem truncados em tabelas.
Os valores de do SDDL
Exemplo 3 – Obter contagem de entradas de auditoria para uma ACL
Este exemplo obtém os descritores de segurança dos arquivos .log no diretório C:\Windows cujos nomes começam com s.
Get-Acl C:\Windows\s*.log -Audit | ForEach-Object { $_.Audit.Count }
Ele usa o parâmetro Audit para obter os registros de auditoria do SACL no descritor de segurança.
Em seguida, ele usa o cmdlet ForEach-Object para contar o número de registros de auditoria associados a cada arquivo. O resultado é uma lista de números que representam o número de registros de auditoria para cada arquivo de log.
Exemplo 4 – Obter uma ACL para uma chave do Registro
Este exemplo usa o cmdlet Get-Acl para obter o descritor de segurança da subchave Control (HKLM:\SYSTEM\CurrentControlSet\Control) do registro.
Get-Acl -Path HKLM:\System\CurrentControlSet\Control | Format-List
O parâmetro caminho |) passa o descritor de segurança que Get-Acl chega ao comando Format-List, que formata as propriedades do descritor de segurança como uma lista para que sejam fáceis de ler.
Exemplo 5 – Obter uma ACL usando **InputObject**
Este exemplo usa o parâmetro InputObject de Get-Acl para obter o descritor de segurança de um objeto de subsistema de armazenamento.
Get-Acl -InputObject (Get-StorageSubSystem -Name S087)
Parâmetros
-Audit
Obtém os dados de auditoria do descritor de segurança da SACL (lista de controle de acesso do sistema).
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Exclude
Omite os itens especificados. O valor desse parâmetro qualifica o parâmetro Path. Insira um elemento ou padrão de caminho, como *.txt. Caracteres curinga são permitidos.
Propriedades do parâmetro
| Tipo: | String[] |
| Valor padrão: | None |
| Dá suporte a curingas: | True |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Filter
Especifica um filtro no formato ou idioma do provedor. O valor desse parâmetro qualifica o parâmetro Path. A sintaxe do filtro, incluindo o uso de caracteres curinga, depende do provedor. Os filtros são mais eficientes do que outros parâmetros, pois o provedor os aplica ao obter os objetos, em vez de fazer com que o PowerShell filtre os objetos depois de recuperados.
Propriedades do parâmetro
| Tipo: | String |
| Valor padrão: | None |
| Dá suporte a curingas: | True |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Include
Obtém apenas os itens especificados. O valor desse parâmetro qualifica o parâmetro Path. Insira um elemento ou padrão de caminho, como *.txt. Caracteres curinga são permitidos.
Propriedades do parâmetro
| Tipo: | String[] |
| Valor padrão: | None |
| Dá suporte a curingas: | True |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-InputObject
Obtém o descritor de segurança do objeto especificado. Insira uma variável que contenha o objeto ou um comando que obtém o objeto.
Você não pode redirecionar um objeto, além de um caminho, para Get-Acl. Em vez disso, use o parâmetro InputObject explicitamente no comando.
Esse parâmetro é introduzido no Windows PowerShell 3.0.
Propriedades do parâmetro
| Tipo: | PSObject |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
ByInputObject
| Cargo: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-LiteralPath
Especifica o caminho para um recurso. Ao contrário do caminho , o valor do parâmetro LiteralPath é usado exatamente como ele é digitado. Nenhum caractere é interpretado como caractere curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. Aspas simples indicam ao PowerShell que não deve interpretar nenhum caractere como uma sequência de escape.
Esse parâmetro é introduzido no Windows PowerShell 3.0.
Propriedades do parâmetro
| Tipo: | String[] |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
| Aliases: | PSPath, LP |
Conjuntos de parâmetros
ByLiteralPath
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | True |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
-Path
Especifica o caminho para um recurso.
Get-Acl obtém o descritor de segurança do recurso indicado pelo caminho. Caracteres curinga são permitidos. Se você omitir o parâmetro Path, Get-Acl obterá o descritor de segurança do diretório atual.
O nome do parâmetro ("Path") é opcional.
Propriedades do parâmetro
| Tipo: | String[] |
| Valor padrão: | None |
| Dá suporte a curingas: | True |
| DontShow: | False |
Conjuntos de parâmetros
ByPath
| Cargo: | 1 |
| Obrigatório: | False |
| Valor do pipeline: | True |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.
Entradas
String
É possível direcionar uma cadeia de caracteres que contém um caminho para este cmdlet.
Saídas
FileSecurity
DirectorySecurity
RegistrySecurity
Esse cmdlet retorna um objeto que representa as ACLs que ele obtém. O tipo de objeto depende do tipo ACL.
Observações
Este cmdlet está disponível apenas em plataformas Windows.
Por padrão, Get-Acl exibe o caminho do PowerShell para o recurso (<provider>::<resource-path>), o proprietário do recurso e "Access", uma lista (matriz) das entradas de controle de acesso na DACL (lista de controle de acesso discricionário) do recurso. A lista DACL é controlada pelo proprietário do recurso.
Quando você formata o resultado como uma lista, (Get-Acl | Format-List), além do caminho, proprietário e lista de acesso, o PowerShell exibe as seguintes propriedades e valores de propriedade:
- Grupo: o grupo de segurança do proprietário.
- Auditoria: uma lista (matriz) de entradas na SACL (lista de controle de acesso do sistema). O SACL especifica os tipos de tentativas de acesso para as quais o Windows gera registros de auditoria.
- Sddl: o descritor de segurança do recurso exibido em uma única cadeia de caracteres de texto no formato Linguagem de Definição do Descritor de Segurança. O PowerShell usa o método getSddlForm de descritores de segurança para obter esses dados.
Como Get-Acl tem suporte dos provedores FileSystem e Registry, você pode usar Get-Acl para exibir a ACL de objetos do sistema de arquivos, como arquivos e diretórios, e objetos do Registro, como chaves e entradas do Registro.