none
Incluir Resposta Sim no Script "CACLS /T" RRS feed

  • Pergunta

  • <!-- /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} @page Section1 {size:612.0pt 792.0pt; margin:14.2pt 34.0pt 14.2pt 17.0pt; mso-header-margin:35.45pt; mso-footer-margin:35.45pt; mso-paper-source:0;} div.Section1 {page:Section1;} --> <!-- /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} @page Section1 {size:612.0pt 792.0pt; margin:14.2pt 34.0pt 14.2pt 17.0pt; mso-header-margin:35.45pt; mso-footer-margin:35.45pt; mso-paper-source:0;} div.Section1 {page:Section1;} -->

    Olá
    Tenho esse script vbs:
    set WshShell = CreateObject("Wscript.Shell")
    WshShell.Run "cacls ""C:\UserFolder\%username%""  /T  /G Administradores:F",0,true

    Gostaria de incluir a resposta "sim" no script

    Com o XCACLS.vbs, o script de logon da GPO não esta funcionando
    set WshShell = CreateObject("Wscript.Shell")
    wshShell.Run "cscript xcacls.vbs ""C:\UserFolder\%username%"" /t /g Administradores:F",0,true

    Se eu for lá e da duplo clique no script ai ele funciona, mais no logon do usuário não

     

    Gostaria que em um só script colocasse as seguintes permissões

     

    Usuário (Usuário dono da pasta) – Modificar

    Admins. do Domínio – Controle Total

    DL_TI_ControleTotal – Controle Total

     

    E possível fazer isso?

     

    Se tiver um script que inclua resposta sim no script abaixo, já ta de grande ajuda.

     

    set WshShell = CreateObject("Wscript.Shell")
    WshShell.Run "cacls ""C:\UserFolder\%username%""  /T  /G Administradores:F",0,true

     

    Desde agradeço.





     

    • Editado ckumark sexta-feira, 26 de junho de 2009 18:32 Fixing thread title bug
    segunda-feira, 22 de junho de 2009 16:21

Respostas

  • Olá galera da comunidade

    Depois de Muito tentar coloca a resposta sim no script acabei descobrindo outra forma melhor para executar o script:


    Vamos Usa o Xcacls.vbs

    Para xcacls funcionar e preciso do Xcacls.vbs que se encontra nesse link:

    http://support.microsoft.com/kb/825751/pt-br

    Ao cria um script.vbs com o conteúdo abaixo:

    set WshShell = CreateObject("Wscript.Shell")
    wshShell.Run "cscript xcacls.vbs ""C:\Pasta\%username%"" /p Administradores:F",0, true

    Para ele funcionar e necessário que o Xcacls.vbs esteja na mesma pasta do script.vbs.
    Mas quando é colocado no script de logon não funciona, porem ao dar duplo clique no script.vbs , então ele é executado. 

    Para o script.vbs funcionar no scritp de logon de uma GPO e só mudar a segundo linha veja o exemplo abaixo:

    set WshShell = CreateObject("Wscript.Shell")
    wshShell.Run "cscript C:\Pasta\ xcacls.vbs ""C:\Pasta\%username%"" /p Administradores:F",0, true

    Caso precise colocar mais de um grupo ou usuário na ACLs segue o exemplo abaixo:

    set WshShell = CreateObject("Wscript.Shell")
    wshShell.Run "cscript C:\Pasta\ xcacls.vbs ""C:\Pasta\%username%"" /p Administradores:F Convidados:X %Username%:M “”MEUDOMÍNIO\%username%“”:M”,0, true

    OBS: Esse caminho C:\Pasta\ xcacls.vbs e apenas exemplo, também pode ser  uma pasta compartilhada, unidade de rede e etc.

    Sempre que for usar usuários ou grupos do DOMÍNIO tem que colocar as aspas:

    “”MEUDOMÍNIO\%username%“”:M

    Não esqueça de deixa o script.vbs e Xcacls.vbs na mesma pasta

    Link abaixo tem uma explicação melhor sobre Xcacls.vbs
    http://support.microsoft.com/kb/825751/pt-br
     

    • Editado astéquio sexta-feira, 26 de junho de 2009 12:44
    • Sugerido como Resposta astéquio sexta-feira, 26 de junho de 2009 12:44
    • Marcado como Resposta Fábio JrModerator quinta-feira, 12 de janeiro de 2012 13:52
    sexta-feira, 26 de junho de 2009 12:39

Todas as Respostas

  • Olá,


    Tente passar no cacls o parametro /E no lugar do /T.

    Exemplo:

    set WshShell = CreateObject("Wscript.Shell")
    WshShell.Run "cacls ""C:\UserFolder\%username%""  /E  /G Administradores:F",0,true



    Faça os testes e nos retorne.

    Até mais,

    Jesiel

    Obs.: Se útil, classifique
    segunda-feira, 22 de junho de 2009 17:41
  • Jesiel


    Então esse eu já tentei, mais o problema e o seguinte; eu criei uma pasta "UserFolder".

    Fiz um script para quando o usuário logar cria uma sub-pasta base com o nome dele, mas para isso acontecer eu tive que colocar o grupo "usuários autenticado" com permissão de gravar, sendo assim todas as subastas (ou seja, as outras pastas dos usuários) estão herdando a herança da “UserFolder” (Sendo assim todos os usuários tem acesso a pasta de todo mundo e ainda de gravar) ai eu tenho que lá manualmente tirar a herança e o grupo.

     

    ("cacls ""C:\UserFolder\%username%""  /E   /G Administradores:F",0,true) Com /E a herança da “UserFolder” permaneci

    Com o ("cacls ""C:\UserFolder\%username%""  /T   /G Administradores:F",0,true) Com /T ele tira as herança, mais aparece a tele do DOS pedindo para confirma.

     

    Dessa forma ele não pede confirmação:
    set WshShell = CreateObject("Wscript.Shell")
    wshShell.Run "cscript xcacls.vbs ""C:\UserFolder\%username%"" /t /g Administradores:F",0,true

    Mais em compensação quando eu coloco para executar em uma GPO script de logon, não fuciona.
    Se eu for lá e da duplo clique no script ai ele funciona, mais no logon do usuário não.

    • Editado Astequio segunda-feira, 22 de junho de 2009 20:28
    segunda-feira, 22 de junho de 2009 20:17
  • Olá galera da comunidade

    Depois de Muito tentar coloca a resposta sim no script acabei descobrindo outra forma melhor para executar o script:


    Vamos Usa o Xcacls.vbs

    Para xcacls funcionar e preciso do Xcacls.vbs que se encontra nesse link:

    http://support.microsoft.com/kb/825751/pt-br

    Ao cria um script.vbs com o conteúdo abaixo:

    set WshShell = CreateObject("Wscript.Shell")
    wshShell.Run "cscript xcacls.vbs ""C:\Pasta\%username%"" /p Administradores:F",0, true

    Para ele funcionar e necessário que o Xcacls.vbs esteja na mesma pasta do script.vbs.
    Mas quando é colocado no script de logon não funciona, porem ao dar duplo clique no script.vbs , então ele é executado. 

    Para o script.vbs funcionar no scritp de logon de uma GPO e só mudar a segundo linha veja o exemplo abaixo:

    set WshShell = CreateObject("Wscript.Shell")
    wshShell.Run "cscript C:\Pasta\ xcacls.vbs ""C:\Pasta\%username%"" /p Administradores:F",0, true

    Caso precise colocar mais de um grupo ou usuário na ACLs segue o exemplo abaixo:

    set WshShell = CreateObject("Wscript.Shell")
    wshShell.Run "cscript C:\Pasta\ xcacls.vbs ""C:\Pasta\%username%"" /p Administradores:F Convidados:X %Username%:M “”MEUDOMÍNIO\%username%“”:M”,0, true

    OBS: Esse caminho C:\Pasta\ xcacls.vbs e apenas exemplo, também pode ser  uma pasta compartilhada, unidade de rede e etc.

    Sempre que for usar usuários ou grupos do DOMÍNIO tem que colocar as aspas:

    “”MEUDOMÍNIO\%username%“”:M

    Não esqueça de deixa o script.vbs e Xcacls.vbs na mesma pasta

    Link abaixo tem uma explicação melhor sobre Xcacls.vbs
    http://support.microsoft.com/kb/825751/pt-br
     

    • Editado astéquio sexta-feira, 26 de junho de 2009 12:44
    • Sugerido como Resposta astéquio sexta-feira, 26 de junho de 2009 12:44
    • Marcado como Resposta Fábio JrModerator quinta-feira, 12 de janeiro de 2012 13:52
    sexta-feira, 26 de junho de 2009 12:39