Você está offline; aguardando reconexão

Como usar Xcacls.vbs para modificar as permissões NTFS

O suporte para o Windows XP terminou

A Microsoft terminou o suporte para o Windows XP em 8 de abril de 2014. Esta alteração afetou as suas atualizações de software e opções de segurança. Saiba o que isto significa para você e como permanecer protegido.

O suporte para o Windows Server 2003 termina em 14 de julho de 2015.

A Microsoft terminou o suporte para o Windows Server 2003 em 14 de julho de 2015. Esta alteração afetou as suas atualizações de software e opções de segurança. Saiba o que isto significa para você e como permanecer protegido.

Sumário
Existe uma versão atualizada da ferramenta da Lista de controle de acesso de alteração extendida (Xcacls.exe) que está disponível como um script do Microsoft Visual Basic (Xcacls.vbs) da Microsoft. Esse artigo descreve passo a passo como usar o script Xcacls.vbs para modificar e exibir as permissões do sistema de arquivos para arquivos ou pastas. Você pode usar o Xcacls.vbs a partir da linha de comando para definir todas as opções de segurança do sistema de arquivos que são acessíveis no Microsoft Windows Explorer. O Xcacls.vbs exibe e modifique as listas de controle de acesso (ACLs) dos arquivos.

Observação O Xcacls.vbs somente é compatível com o Microsoft Windows 2000, com o Microsoft Windows XP e com o Microsoft Windows Server 2003. O Xcacls.vbs não é suportado pela Microsoft.

voltar ao início

Para configurar e usar o Xcacls.vbs, execute estas etapas:
  1. Obtenha a última versão do Xcacls.vbs no seguinte site da Microsoft:
  2. Clique duas vezes em Xcacls_Installer.exe. Quando for solicitado a indicar um local para colocar os arquivos extraídos, especifique uma pasta que esteja na configuração de caminho de pesquisa do computador, como C:\Windows.
  3. Altere o mecanismo de script padrão de Wscript para Cscript. (O script Xcacls.vbs funciona melhor em Cscript.) Para fazer isso, digite o seguinte no prompt de comando e pressione ENTER:
    cscript.exe /h:cscript
    Observação Alterar o mecanismo de script padrão para Cscript afeta apenas como os scripts gravam na tela. O Wscript grava individualmente cada linha em uma caixa de diálogo OK. O Cscript grava cada linha na janela de comando. Se desejar alterar o mecanismo de script padrão, você deve executar o script usando o seguinte comando
    cscript.exe xcacls.vbs
    enquanto que se você alterar o padrão para Cscript, pode executar o script com o seguinte comando:
    xcacls.vbs
    .
  4. Para verificar a sintaxe de comando do Xcacls.vbs, digite o seguinte no prompt de comando:
    xcacls.vbs /?
voltar ao início

A seguinte saída do comando xcacls.vbs /? descreve a sintaxe de comando do Xcacls.vbs:
 Uso: XCACLS nome_do_arquivo [/E] [/G usuário:perm;espec] [...] [/R usuário [...]]                        [/F] [/S] [/T]                        [/P usuário:perm;espec [...]] [/D usuário:perm;espec] [...]                        [/O usuário] [/I ENABLE/COPY/REMOVE] [/N                        [/L nome_do_arquivo] [/Q] [/DEBUG]   nome_do_arquivo            [Requerido] Se usado sozinho, exibe as ACLs.                              (O nome_do_arquivo pode ser um nome de arquivo,                              nome de diretório ou caracteres curinga e pode                               incluir o caminho completo. Se o caminho estiver                              faltando, presume-se que esteja no diretório atual.)                              Observações:                              - Coloque o nome do arquivo entre aspas se ele tiver                              espaços ou caracteres especiais como &,$, #, etc.                              - se o nome do arquivo for um diretório, todos os                               arquivos e subdiretórios sob ele NÃO serão alterados                              a menos que a /A seja adicionado.   /F                         [Usado com Diretório ou Curinga] Altera todos os                               arquivos sob o diretório mas NÃO atravessa subdiretórios                              a menos que /T também seja adicionado. Se o nome do                               arquivo for um diretório e /F não estiver adicionado,                              nenhum arquivo é alterado.   /S                         [Usado com Diretório ou Curinga] Altera todas as                               subpastas sob o diretório mas NÃO atravessa subdiretórios                              a menos que /T também seja adicionado. Se o nome do                               arquivo for um diretório e /S não estiver adicionado,                              nenhum subdiretório é alterado.   /T                         [Usado somente com um Diretório] Atravessa cada                               subdiretório e executa as mesmas alterações. Esta chave                              atravessa diretórios somente se o nome do arquivo for um                              diretório ou se estiver usando caracteres curinga.   /E                         Edita a ACL em vez de substituí-la.   /G usuário:GUI             Concede permissões de segurança similares às opções-padrão                              GUI do Windows (não-avançadas).   /G usuário:Perm;Espec      Concede direitos de acesso de usuário específicos.                              (/G adiciona direitos existentes para usuário)                              Usuário: Se Usuário tiver espaços, coloque-o entre aspas.                                       Se Usuário contiver #machine#, ele substituirá                                        #machine# pelo nome de máquina real se for um                                       controlador sem domínio, e substituirá pelo nome                                       de domínio real se for um controlador de domínio.                                       Novo para 3.0: O usuário pode ser uma seqüência                                       que represente o SID real, mas DEVE ser precedido                                       por SID#: SID#S-1-5-21-2127521184-160...                                       (A seqüência do SID mostrada foi reduzida)                                       (Se qualquer usuário tiver SID#, então todas as                                       correspondências devem coincidir com o SID (não                                       o nome), assim, se sua intenção é aplicar as                                        alterações para todas as contas que coincidam                                        com o Domínio\Usuário, não especifique SID# como                                       um dos usuários.)                              GUI: Usado para direitos-padrão e pode ser:                                   Permissões...                                         F Controle total                                        M Modificar                                        X ler e eXecutar                                        L conteúdo de pasta de lista                                        R Ler                                        W Gravar                                    Observação: Se ; existir, será considerado como                                    um par de parâmetros Perm;Espec.                              Perm: Usado para "Arquivos somente" e pode ser:                                    Permissões...                                        F  Controle total                                        M  Modificar                                        X  ler e eXecutar                                        R  ler                                        W  gravação                                     Avançadas...                                        D  Assumir propriedade                                        C  Alterar permissões                                        B  Ler permissões                                        A  Excluir                                        9  Gravar atributos                                        8  Ler atributos                                        7  Excluir subpastas e arquivos                                        6  Atravessar pasta/ Executar arquivo                                        5  Gravar atributos extendidos                                        4  Ler atributos extendidos                                        3  Criar pastas / Acrescentar dados                                        2  Criar arquivos / Gravar dados                                        1  Listar pasta / Ler dados                              Espec é para "Pasta e subpastas somente" e tem as mesmas                              opções de Perm.   /R usuário                 Revoga os direitos de acesso específicos do usuário.                              (Removerá qualquer ACL permitido ou negado para usuário.)   /P usuário:GUI             Substitui as permissões de segurança similares às                               opções-padrão.   /P usuário:perm;espec      Substitui os direitos de acesso específicos do usuário.                              Para obter a especificação de direito de acesso, veja a                              opção /G. (/P comporta-se como /G se não há direitos                               definidos para usuário.)   /D usuário:GUI             Nega permissões de segurança similares às opções-padrão.   /D usuário:perm;espec      Nega direitos de acesso de usuário específicos. Para                               obter a especificação de direito de acesso, veja a opção /G.                              (/D adiciona direitos existentes para usuário)   /O usuário                Alterar o proprietário para esse usuário ou grupo.   /I chave                  Sinalizador de herança.  Se omitido, o padrão é não tocar                             nos ACLs herdados.                             A chave pode ser:                                  ENABLE - Isso ativará o sinalizador de herança caso                                           ele ainda não esteja ativado.                                  COPY   - Isso desativará o sinalizador de herança e                                           copiará os ACLs herdados nos ACLs efetivos.                                  REMOVE - Isso desativará o sinalizador de herança e                                           não copiará os ACLs herdados.  É o oposto                                            de ENABLE.                              Se a chave não estiver presente, /l será ignorado e os                             ACLs herdados permanecerão inalterados.   /L nome_do_arquivo        Nome_do_arquivo para logon. Isso pode incluir um nome de                              caminho se o arquivo não estiver em um diretório atual.                              O arquivo será adicionado ou criado se ele não existir.                             Se ele existir, deve ser um arquivo de texto, caso                              contrário, um erro ocorrerá.                             Se o nome de arquivo for omitido, o nome-padrão de XCACLS                             será usado.   /Q                        Ativa o modo Silencioso.                             Por padrão, está desativado. Se estiver ativado, não haverá                             exibição na tela.   /DEBUG                    Ativa o modo Depurar.                             Por padrão, está desativado. Se estiver ativado, haverá                              mais informações exibidas e/ou registradas. As                              informações exibirão Sub/Função Enter e Exit assim                              como outras informações importantes.   /SERVER nome_do_servidor  Insere um servidor remoto para executar o script.   /USER nome_do_usuário     Insere o Nome_do_usuário para as Conexões remotas                              (requer chave PASS).                              Será ignorado se for para uma Conexão local.   /PASS senha               Insere a senha da chave USER (requer a chave USER). Os caracteres curinga podem ser usados para especificar mais de um arquivo em um comando, como:              *       Qualquer seqüência de zero ou mais caracteres              ?       Qualquer caractere único Você pode especificar mais de um usuário em um comando. Você pode combinar direitos de acesso.


voltar ao início


Você pode usar Xcacls.vbs para exibir as permissões para arquivos ou pastas. Por exemplo, se você tem uma pasta nomeada C:\Test, digite o seguinte no prompt de comando para exibir as permissões de pasta e pressione ENTER:
xcacls.vbs c:\test
O seguinte exemplo é um resultado típico:
 C:\>XCACLS.VBS c:\test Microsoft (R) Windows Script Host Version 5.6 Copyright (C) Microsoft Corporation 1996-2001. Todos os direitos reservados. Iniciando XCACLS.VBS (Versão: 3.4) Script em 11/6/2003 10:55:21 a.m. Diretório de inicialização: "C:\teste" Argumentos Usados:         Nome do arquivo = "c:\teste" ************************************************************************** Diretório: C:\teste Permissões: Tipo        Nome do usuário          Permissões                Herança Permitido   BUILTIN\Administradores  Controle total            Essa pasta, Subpasta Permitido   NT AUTHORITY\SYSTEM      Controle Total            Esta pasta, Subpasta Permitido   Domínio1\Usuário1        Controle Total            Somente essa pasta Permitido   \CREATOR OWNER           Especial (Desconhecido)   Subpastas e arquivos Permitidos  BUILTIN\Usuários         Ler e executar            Nesta pasta, Subpastas Permitidos  BUILTIN\Usuários         Criar pastas/ Adicionar   Esta pasta e subpastas Permitidos  BUILTIN\Usuários         Criar arquivos/ Gravar    Essa pasta e subpastaNenhuma configuração de auditoriaProprietário: Domínio\Usuário1


Observação A saída do comando xcacls.vbs c:\test nesse exemplo coincide com o texto exibido na interface gráfica do usuário (GUI). Algumas palavras estão incompletas na janela de comando.

A saída também fornece a versão do script, o diretório de inicialização e os argumentos que foram usados.

Você também pode usar caracteres curinga para exibir arquivos coincidentes sob o diretório. Por exemplo, se você digitar o seguinte, todos os arquivos com extensão ".log" da pasta C:\Teste serão exibidos:
xcacls.vbs c:\test\*.log
voltar ao início


Os seguintes comandos Xcacls.vbs fornecem alguns exemplos do uso do Xcacls.vbs.

xcacls.vbs c:\teste\ /g domínio\usuárioteste1:f /f /t /e
Esse comando edita as permissões existentes. O comando garante a Domínio\UsuárioTeste1 controle total sobre todos os arquivos sob C:\Teste, atravessa as subpastas sob C:\Teste e altera quaisquer arquivos encontrados. Esse comando não toca em diretórios.
xcacls.vbs c:\teste\ /g domínio\usuárioteste1:f /s /l "c:\xcacls.log"
Esse comando substitui as permissões existentes. Ele garante ao Domínio\UsuárioTeste1 controle total sobre todas as subpastas em C:\Teste e registra em C:\Xcacls.log. Esse comando não toca em arquivos e não atravessa diretórios.
xcacls.vbs c:\teste\readme.txt /o "máquinaa\grupo1"
Esse comando altera o proprietário de Readme.txt para o grupo MáquinaA\Grupo1.
xcacls.vbs c:\teste\badcode.exe /r "máquinaa\grupo1" /r "domínio\usuárioteste1"
Esse comando revoga as permissões para C:\Teste\Badcode.exe para MáquinaA\Grupo1 e para Domínio\UsuárioTeste1.
xcacls.vbs c:\teste\subdir1 /i enable /q
Esse comando ativa a herança na pasta C:\Teste\Subdir1. Ele suprime qualquer saída de tela.
xcacls.vbs \\servera\sharez\testpage.htm /p "domínio\grupo2":14
Esse comando conecta remotamente a \\ServidorA\CompartilhamentoZ usando a Instrumentação de gerenciamento do Windows (WMI). Ele então obtém o caminho local para aquele compartilhamento, e sob esse caminho, altera as permissões em Páginateste.htm. Ele deixa intactas as permissões existentes de Domínio\Grupo2, mas adiciona permissões 1 (leitura de dados) e 4 (leitura de atributos extendidos). O comando omite outras permissões no arquivo porque a chave /e não foi usada.
xcacls.vbs d:\default.htm /g "domínio\grupo2":f /servidor servidora /usuário servidora\admin /pass senha /e
Esse comando usa o WMI para se conectar remotamente como ServidorA\Admin para ServidorA e concede permissões totais em Padrão.htm para Domínio\Grupo2. As permissões existentes para Domínio\Grupo2, além de outras permissões no arquivo restante, são perdidas.
voltar ao início
Referências
Para obter informações adicionais sobre como usar o Xcacls.exe, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento da Microsoft:
318754 Como usar o Xcacls.exe para modificar as permissões NTFS
Propriedades

ID do Artigo: 825751 - Última Revisão: 06/15/2005 14:33:00 - Revisão: 2.1

Microsoft Windows Server 2003, Datacenter Edition (32-bit x86), Microsoft Windows Server 2003, Enterprise Edition (32-bit x86), Microsoft Windows Server 2003, Standard Edition (32-bit x86), Microsoft Windows Server 2003, Web Edition, Microsoft Windows XP Professional, Microsoft Windows XP Home Edition, Microsoft Windows 2000 Datacenter Server, Microsoft Windows 2000 Advanced Server, Microsoft Windows 2000 Server, Microsoft Windows 2000 Professional Edition

  • kbhowtomaster KB825751
Comentários