Obtenha a propriedade de um arquivo ou pasta usando a linha de comando no Windows

Cada arquivo ou pasta em um volume NTFS tem um proprietário. Certos arquivos do sistema são propriedade do TrustedInstaller, alguns da conta SYSTEM e outros do grupo “Administradores”. Se um usuário cria um arquivo ou pasta, esse usuário geralmente é o proprietário do arquivo ou pasta. O proprietário é aquele que pode atribuir permissões (Permitir ou Negar) a outros usuários para aquele objeto.

Se um usuário não for o proprietário de um arquivo ou pasta ou não tiver permissão para acessar o arquivo, ele obterá o erro “acesso negado” ao acessar o objeto. Se esse usuário for um administrador, ele pode se apropriar do objeto usando as propriedades do arquivo ou pasta - guia Segurança. Em seguida, ele pode atribuir a si mesmo as permissões necessárias.

Esta postagem mostra como apropriar-se de um arquivo ou pastae atribua as permissões necessárias para ele usando a linha de comando em vez da GUI.

Conteúdo

  • Assumir a propriedade de um arquivo usando takeown.exe
  • Atribuir permissões de arquivo usando icacls.exe
  • Assumir a propriedade de uma pasta usando takeown.exe
  • Atribuir permissões de pasta usando icacls.exe
  • Assumir a propriedade e atribuir permissões por meio do menu do botão direito [Script / Tweak]

Informação adicional

  • INFO: icacls.exe também pode alterar a propriedade
  • Reverter a propriedade para TrustedInstaller
  • ERRO: icacls.exe / setowner “Acesso negado”
  • Usando SetACL.exe para assumir a propriedade e atribuir permissões [Freeware de terceiros]

O Windows inclui uma ferramenta de linha de comando chamada Takeown.exe, que pode ser usado a partir de um Prompt de comando do administrador para alterar rapidamente a propriedade de um arquivo ou pasta. Aqui está como apropriar-se de um arquivo ou pasta e, em seguida, atribua permissões para uma conta usando a linha de comando.

Obtenha a propriedade usando takeown.exe da linha de comando

Apropriar-se de um arquivo

Abra um Prompt de comando elevado janela. Use a seguinte sintaxe para obter a propriedade de um arquivo:

TAKEOWN / F 

Substituir com o nome do arquivo real com o caminho completo.

O usuário conectado no momento agora é o proprietário do arquivo.

Pôr Administradores agrupar o proprietário do arquivo, use o /UMA mudar além disso:

TAKEOWN / F  /UMA
  • /UMA Concede propriedade ao grupo Administradores em vez do usuário atual. Se /UMA não for especificado, a propriedade do arquivo será fornecida ao usuário conectado no momento. Este parâmetro é não maiúsculas e Minúsculas.

Se a operação for bem-sucedida, você verá a seguinte mensagem:

“SUCESSO: O arquivo (ou pasta):“ nome do arquivo ”agora pertence ao usuário“ Nome do computador \ Nome do usuário ”.”

ou

SUCESSO: O arquivo (ou pasta): “nome do arquivo” agora pertence ao grupo de administradores.

Atribuir permissões de arquivo

Então, para conceder Administradores Permissões de controle total para o arquivo, use ICACLS. Aqui está a sintaxe:

ICACLS / conceder administradores: F

Exemplo 2: para atribuir permissões de controle total para o usuário conectado no momento, use este comando:

ICACLS / grant% username%: F

%nome do usuário% representa o nome da conta do usuário conectado no momento. ICacls aceita essa variável diretamente.

Exemplo 3: Para atribuir permissões de controle total para o usuário nomeado John, use este comando:

ICACLS / grant John: F

Apropriar-se de uma pasta

Use a seguinte sintaxe:

takeown / f 

(ou)

takeown / f  /uma
  • /uma Concede propriedade ao grupo Administradores em vez do usuário atual. Se /uma não for especificado, a propriedade será fornecida ao usuário conectado no momento. Este parâmetro é não maiúsculas e Minúsculas.

Você verá a seguinte saída:

SUCESSO: O arquivo (ou pasta): “folder_name” agora pertence ao usuário “computername \ username”

(ou)

SUCESSO: O arquivo (ou pasta): “folder_name” agora pertence ao grupo de administradores.

Alterar propriedade recursivamente:

Para alterar a propriedade de uma pasta, suas subpastas e arquivos em cada subpasta, use esta sintaxe:

takeown / f / r / d y

O usuário conectado no momento agora é o proprietário da pasta.

Pôr Administradores agrupar o proprietário da pasta, suas subpastas e arquivos recursivamente, use o /UMA mudar além disso:

TAKEOWN / F  / a / r / d y
  • / R Recurse: instrui a ferramenta a operar em arquivos no diretório especificado e em todos os subdiretórios.
  • / D prompt Resposta padrão usada quando o usuário atual não tem a permissão “listar pastas” em um diretório. Isso ocorre durante a operação recursiva (/ R) em subdiretórios. Os valores válidos “Y” para assumir a propriedade ou “N” para pular.

Atribuir permissões de pasta

Então, para atribuir o Administradores grupo Permissões de controle total para a pasta, use esta sintaxe:

icacls / administradores de concessão: F / T

O / T O parâmetro é adicionado para que a operação seja realizada em todos os subdiretórios e arquivos dessa pasta.

Ajuda de linha de comando:

Para saber as informações completas de uso de Takeown.exe e ICacls.exe, execute esses comandos em uma janela de prompt de comando.

takeown /?
icacls /?

Métodos mais fáceis para assumir a propriedade

Script de Comando

Para simplificar ainda mais o processo de apropriação, Tim Sneath da Microsoft fornece um arquivo .CMD (Windows Command Script) que assume a propriedade e atribui permissões de controle total aos administradores para o diretório. Para obter mais informações, leia a postagem de Tim, intitulada Segredo 11: Excluindo o que não pode ser excluído.

Adicione o comando “Take Ownership” ao menu do botão direito

Isso novamente usa o especial correr como verbo no Windows Vista e superior, que eu abordei anteriormente (REFCorrer como).

através da WinMatrix.com

Download takeown_context.reg e salve na área de trabalho. Clique com o botão direito no arquivo e escolha Unir. Clique sim quando solicitada a confirmação. Isso adiciona um comando estendido chamado Tomar posse no menu de contexto para arquivos e diretórios. Para acessar o comando, você precisa pressionar e segurar o MUDANÇA e clique com o botão direito em um arquivo ou pasta.

(Você pode ler mais sobre o ajuste no artigo Obtenha a propriedade do arquivo ou pasta através do menu de contexto do botão direito do mouse no Windows.)


informação adicional

A seção acima cobre a maioria das coisas de que você precisa. Leia abaixo se precisar de mais dicas sobre este tópico.

icacls.exe também pode alterar a propriedade de um arquivo ou pasta!

Takeown.exe e Icacls.exe são as duas ferramentas integradas do console do Windows, que permitem alterar a propriedade do arquivo ou pasta e atribuir permissões de controle de acesso, respectivamente. Takeown.exe define a conta do usuário atualmente conectado como a proprietária de um objeto (arquivo ou pasta).

No entanto, com Takeown.exe, você não pode criar outra conta como o proprietário de um objeto.

Você sabia que a ferramenta icacls.exe também pode ser usada para alterar a propriedade?

Para alterar a propriedade de uma conta de terceiros (ou seja, a conta que não está atualmente conectada) ou grupo, você pode usar icacls.exe com o /setowner argumento da linha de comando, em vez de takeown.exe.

Alterar a propriedade de um arquivo ou pasta usando icacls.exe

Vimos como alterar a propriedade usando icacls.exe na última parte do artigo Obtenha a propriedade de um arquivo ou pasta usando a linha de comando no Windows. Aqui estão mais alguns exemplos:

A seguir está a sintaxe da linha de comando para alterar a propriedade de um arquivo ou pasta usando icacls.exe:

icacls "file_or_folder_name" / setowner "NT Service \ TrustedInstaller"

Exemplos: Conjunto nº 1: alterar a propriedade de um único arquivo ou pasta

icacls "D: \ Annual Reports \ 2020 \ November" / setowner "John"
icacls "D: \ Tax Audit \ November.xlsx" / setowner "John"
icacls "D: \ Auditoria Fiscal \ Novembro.xlsx" / setowner "Administradores"

Se a operação for bem-sucedida, você verá a seguinte mensagem:

arquivo processado: file_or_folder_name
Processado com sucesso 1 arquivo; Falha ao processar 0 arquivos

Exemplo 2: alterar a propriedade de uma pasta (subpasta e arquivos) recursivamente

Para alterar a propriedade de uma pasta, suas subpastas e todos os arquivos em todas as subpastas recursivamente, use o / T switch (transversal), além disso:

icacls "folder_name" / setowner "Administrators" / T
  • / T indica que esta operação é executada em todos os arquivos / diretórios correspondentes abaixo dos diretórios especificados no nome.

O comando acima define TrustedInstaller como o proprietário da pasta, suas subpastas e todos os arquivos em todas as subpastas.


Reverter a propriedade de volta para TrustedInstaller

Às vezes, para corrigir um problema, pode ser necessário alterar um arquivo de dados como XML ou um Chave do registro propriedade de TrustedInstaller. Para isso, primeiro você precisa se apropriar do arquivo, pasta ou Chave do registro.

Depois de modificar os arquivos ou configurações, você precisa reverter a propriedade para Instalador confiável, se TrustedInstaller for o proprietário anterior ou original. Para definir a propriedade de volta para TrustedInstaller, use estas etapas:

O serviço Windows Modules Installer ou TrustedInstaller permite a instalação, modificação e remoção de atualizações do Windows e componentes opcionais. Por padrão, TrustedInstaller também é o proprietário de muitas chaves de registro críticas e arquivos de sistema.

  1. Clique com o botão direito em um arquivo ou chave de registro e clique em Permissões.
  2. Clique em Avançado para abrir a caixa de diálogo Configurações de segurança avançadas.
  3. Perto de “Proprietário:”, clique em Alterar.
  4. Na caixa de diálogo Selecionar usuário ou grupo, digite “NT SERVICE \ TrustedInstaller”E pressione ENTER.
    apropriar-se de um arquivo
  5. Clique em Aplicar, OK.
    apropriar-se de um arquivo

Isso muda a propriedade do objeto (arquivo, pasta ou Chave do registro) para TrustedInstaller ou Windows Modules Installer.

RELACIONADO:Obtenha a propriedade de uma chave de registro e atribua permissões usando a linha de comando

Usando o comando icacls.exe para definir TrustedInstaller como o proprietário de um arquivo

Em uma janela de prompt de comando do administrador, use a seguinte sintaxe de linha de comando:

icacls "caminho \ nome do arquivo" / setowner "NT Service \ TrustedInstaller"

Exemplo:

icacls "C: \ Windows \ PolicyDefinitions \ WindowsStore.admx" / setowner "NT Service \ TrustedInstaller"

TrustedInstaller agora possui o arquivo WindowsStore.admx.


Acesso de icacls / setowner negado?

Às vezes o icacls.exe / setowner a linha de comando pode encontrar o seguinte erro:

nome do arquivo: acesso negado. Processou com sucesso 0 arquivos; Falha ao processar 1 arquivo

Isso pode acontecer quando ele encontra um link físico NTFS. O erro geralmente aparece quando você tenta alterar a propriedade de arquivos protegidos no diretório do Windows - por exemplo, C: \ Windows \ Notepad.exe. UMA link duro é a representação do sistema de arquivos de um arquivo por meio do qual mais de um caminho faz referência a um único arquivo no mesmo volume.

Por exemplo, os arquivos Notepad.exe têm dois arquivos com link físico, que você pode ver usando o seguinte comando:

Lista de hardlink de fsutil.exe C: \ Windows \ notepad.exe
lista de hardlink de fsutil notepad.exe

Você pode ver que o Notepad.exe está vinculado aos seguintes arquivos:

C: \ Windows \ System32 \ Notepad.exe. C: \\ Windows \ WinSxS \ amd64_microsoft-windows-notepad_31bf3856ad364e35_10.0.19041.488_none_4cea9379ceedab35 \ notepad.exe

O icacls.exe / setowner comando encontra o ACESSO NEGADO erro ao processar esses links físicos.

Observe que a documentação do icacls.exe diz: “Esta opção não força uma mudança de propriedade; use o utilitário takeown.exe para esse fim. ”

Se você encontrar erros de “Acesso negado” ao definir a propriedade usando Icacls, pode ter que contar com Takeown.exe, SubInACL ou o utilitário de linha de comando SetACL.exe de terceiros (consulte o próximo parágrafo).


Usando SetACL.exe para assumir a propriedade e atribuir permissões

SetACL.exe é uma ferramenta de linha de comando de terceiros (de HelgeKlein.com) que abordamos antes de.

SetACL: argumentos de linha de comando

Antes de continuar, vamos ver a sintaxe da linha de comando para alterar a propriedade e as permissões do arquivo / registro usando SetACL.

SetACL -on objectname -ot objecttype -actn action
  • -sobre: Especifique o caminho para o objeto em que SetACL deve operar (por exemplo, arquivo, chave de registro, compartilhamento de rede, serviço ou impressora).
  • -ot: Especifique o tipo de objeto. Para alterar a propriedade ou as permissões de um arquivo ou pasta, use o tipo de objeto Arquivo. Para chaves de registro, use o tipo de objeto reg
  • -actn: Especifique a ação quanto ao que SetACL deve fazer em relação ao objeto especificado. Para assumir a propriedade, defina a ação como setowner. Para alterar as permissões, defina a ação como ás.
  • -ownr: Especifique o nome ou SID de um trustee (um usuário ou grupo) neste formato - por exemplo, "n: Administradores"

(Ver Documentação SetACL para obter a lista completa de objetos, tipos e ações com suporte.)

Para alterar a propriedade e conceder permissão de controle total, aqui estão alguns exemplos:

Exemplos: alterar a propriedade de um único arquivo ou pasta:

setacl.exe -on c: \ windows \ notepad.exe -ot arquivo -actn setowner -ownr "n: NT Service \ TrustedInstaller" setacl.exe -on c: \ windows \ notepad.exe -ot arquivo -actn setowner -ownr "n: Administradores" setacl.exe -on c: \ windows \ notepad.exe -ot arquivo -actn setowner -ownr "n: John" setacl.exe -on "d: \ test" -ot arquivo -actn setowner -ownr "n: Serviço NT \Instalador confiável" setacl.exe -on "d: \ test" -ot arquivo -actn setowner -ownr "n: Administradores" setacl.exe -on "d: \ test" -ot arquivo -actn setowner -ownr "n: John"

Exemplos: Alterar propriedade recursivamente:

Opção 1: Para definir a propriedade de uma pasta e suas subpastas (não para arquivos) recursivamente, use um destes exemplos:

setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: NT Service \ TrustedInstaller" -rec cont. setacl.exe -on d: \ test -ot arquivo -actn setowner -ownr "n: Administradores" -rec cont. setacl.exe -on d: \ test -ot arquivo -actn setowner -ownr "n: Ramesh" -rec cont
  • -gravando - a recursão está habilitada.
  • cont - Recurse e processos de diretórios apenas.

Opção 2: Para definir a propriedade de arquivos em uma pasta e suas subpastas (não pastas) recursivamente, use um destes exemplos:

setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: NT Service \ TrustedInstaller" -rec obj. setacl.exe -on d: \ test -ot arquivo -actn setowner -ownr "n: Administradores" -rec obj. setacl.exe -on d: \ test -ot arquivo -actn setowner -ownr "n: Ramesh" -rec obj
  • -gravando - a recursão está habilitada.
  • obj - Recurse e processe apenas arquivos.

Opção 3: Para definir a propriedade de um pasta, suas subpastas e os arquivos recursivamente, use um destes exemplos:

setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: NT Service \ TrustedInstaller" -rec cont_obj. setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: Administradores" -rec cont_obj. setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: Ramesh" -rec cont_obj
  • -gravando - a recursão está habilitada.
  • cont_obj - Recurse e processe diretórios e arquivos.

Exemplos: atribua as permissões necessárias para um arquivo ou pasta:

Depois de obter a propriedade, você pode atribuir as permissões necessárias para um objeto. aqui estão alguns exemplos:

Para atribuir as permissões para um solteiro arquivo ou pasta, use um destes exemplos:

setacl.exe -on "d: \ test \ sample.xlsx" -ot arquivo -actn ace -ace "n: Administradores; p: full " setacl.exe -on "d: \ test \ sample.xlsx" -ot arquivo -actn ace -ace "n: John; p: full "setacl.exe -on" d: \ test "-ot arquivo -actn ace -ace" n: Administradores; p: full " setacl.exe -on "d: \ test" -ot arquivo -actn ace -ace "n: John; p: full "

Exemplos: atribua as permissões necessárias recursivamente:

Opção 1: Para pasta e subpastas (não arquivos) recursivamente, use um destes exemplos:

setacl.exe -on "d: \ test" -ot arquivo -actn ace -ace "n: Administradores; p: full "-rec cont. setacl.exe -on "d: \ test" -ot arquivo -actn ace -ace "n: John; p: full "-rec cont
  • -gravando - a recursão está habilitada.
  • cont - Recurse e processos de diretórios apenas.

Opção 2: Para arquivos em uma pasta e subpastas (não pastas) recursivamente, use um destes exemplos:

setacl.exe -on "d: \ test" -ot arquivo -actn ace -ace "n: Administradores; p: full "-rec obj. setacl.exe -on "d: \ test" -ot arquivo -actn ace -ace "n: John; p: full "-rec obj
  • -gravando - a recursão está habilitada.
  • obj - Recurse e processe apenas arquivos.

Opção 3: Para pasta, suas subpastas e os arquivos recursivamente, use um destes exemplos:

setacl.exe -on "d: \ test" -ot arquivo -actn ace -ace "n: Administradores; p: full "-rec cont_obj. setacl.exe -on "d: \ test" -ot arquivo -actn ace -ace "n: John; p: full "-rec cont_obj
  • -gravando - a recursão está habilitada.
  • cont_obj - Recurse e processe diretórios e arquivos.

Você pode verificar a documentação oficial do SetACL para saber sobre todos os seus recursos. No entanto, para definir a propriedade e as permissões de arquivos e pastas, takeown.exe e icacls.exe seriam mais do que suficientes para a maioria dos usuários.


Um pequeno pedido: Se você gostou deste post, por favor, compartilhe?

Um "pequeno" compartilhamento seu ajudaria seriamente no crescimento deste blog. Algumas ótimas sugestões:
  • Fixá-lo!
  • Compartilhe com seu blog favorito + Facebook, Reddit
  • Tweet isso!
Muito obrigado pelo seu apoio, meu leitor. Não vai demorar mais de 10 segundos do seu tempo. Os botões de compartilhamento estão logo abaixo. :)