
Esta é uma questão dupla.
Estou desenvolvendo um aplicativo que precisará criar compartilhamentos de rede no Windows Server 2003 por meio da linha de comando. Então, em primeiro lugar, como faço para criar compartilhamentos no Windows através da linha de comando? Tentei pesquisar e tudo que consegui descobrir é que deveria estar usando net
, mas fora isso, não há muita documentação.
Além disso, neste compartilhamento haverá alguns diretórios com os nomes dos usuários no domínio, e eu gostaria que os diretórios não pudessem ser lidos ou gravados por mais ninguém. Por exemplo, digamos que eu tenha dois diretórios: jsmith
e jdoe
. Gostaria que o usuário jsmith
escrevesse e lesse no diretório jsmith
, mas não no diretório chamado jdoe
, e vice-versa.
Responder1
Esta deve ser a informação que você está procurando:
::Create a drive letter map to an existing network share
net use z: \\servername\share password /USER:domain\username /PERSISTENT:YES
:: grant user 'jsmith' full control access to the jsmith directory
cacls z:\jsmith /T /E /G jsmith:f
Você também pode remover permissões ou editar permissões no diretório usando cacls.exe. Minha recomendação seria ler cacls.exe
Cacls
http://technet.microsoft.com/en-us/library/bb490872.aspx
ou apenas "cacls /?" da linha de comando também deve funcionar.
Responder2
O comando que você está procurando é net share
. A /?
ajuda do comando é bastante direta, mas aqui está um exemplo:
net share MyShareName="C:\My Local Path\SomeFolder" /GRANT:Everyone,FULL
No que diz respeito à segurança, pelo que li, a prática recomendada é fazer como acima, conceder ao grupo Todos controle total sobre ocompartilhare gerencie as permissões nos próprios arquivos e pastas. Isso ocorre porque as permissões de compartilhamento são um filtro de restrição sobre as permissões reais de arquivos e pastas.