Altere as permissões de compartilhamento de rede do Windows usando ferramentas de linha de comando

5

Pode ser feito sem baixar subinacl.exe ?

    
por BlueRaja 28.04.2010 / 19:54

3 respostas

2

Você viu icacls.exe e cacls.exe ? (ambos na pasta System32 , pelo menos no Win7)

    
por 28.04.2010 / 20:00
3

Pergunta antiga, mas recentemente precisei fazer isso para vários compartilhamentos residenciais a fim de restringir o "Controle total". Enquanto você poderia fazer isso no nível NTFS, leva tempo para aplicar recursivamente, tempo para reverter e ferramentas como o MMC ADUC pode colocar as permissões de volta.

Parece não haver uma ferramenta de linha de comando para gerenciar permissões em compartilhamentos existentes, apenas durante a configuração inicial, mas você pode fazer várias concessões, portanto, se os compartilhamentos ficarem off-line por um momento, isso não é um problema. use:

NET SHARE example /DELETE /Y
NET SHARE example=C:\FolderPath /GRANT:Everyone,Change /GRANT:Administrators,Full /UNLIMITED /CACHE:None

Mas isso não era uma opção para mim, então acabei usando a excelente ferramenta 'SetACL.exe' que também tem uma opção para direcionar nomes de compartilhamento.

SetACL.exe -on "example" -ot shr -actn ace -ace "n:S-1-1-0;p:change"
SetACL.exe -on "example" -ot shr -actn ace -ace "n:S-1-5-32-544;p:full"

Observe que isso está usando o 'Well-known SID' para todos (S-1-1-0) e os administradores locais (S-1-5-32-544). Você pode usar o nome, mas evita pesquisas e qualquer chance de ser confundido com um grupo de domínio.

Para eficiência, várias alterações podem ser mescladas em um único comando:

SetACL.exe -on "example" -ot shr -actn ace -ace "n:S-1-1-0;p:change" -ace "n:S-1-5-32-544;p:full"

Observe que o comando SetACL tem como alvo o SHARE NAME e não o caminho da pasta do compartilhamento, que normalmente é usado para permissões de NTFS.

    
por 17.12.2015 / 17:33
2

Talvez no Windows 2003. Ainda não tentei ...

net share /grant 

Edite, depois de comentar, de uma máquina Win 7 x64.

Observe o [/GRANT:user,[READ | CHANGE | FULL]]

C:\Users\gbn>net share /?
The syntax of this command is:

NET SHARE
sharename
          sharename=drive:path [/GRANT:user,[READ | CHANGE | FULL]]
                               [/USERS:number | /UNLIMITED]
                               [/REMARK:"text"]
                               [/CACHE:Manual | Documents| Programs | BranchCach
e | None]
          sharename [/USERS:number | /UNLIMITED]
                    [/REMARK:"text"]
                    [/CACHE:Manual | Documents | Programs | BranchCache | None]
          {sharename | devicename | drive:path} /DELETE
          sharename \computername /DELETE


C:\Users\gbn>
    
por 28.04.2010 / 19:59