Créer des partages réseau via la ligne de commande avec des autorisations spécifiques

11

C'est en quelque sorte une question à deux volets.

Je développe une application qui devra pouvoir créer des partages réseau dans Windows Server 2003 via la ligne de commande. Donc, tout d'abord, comment créer des partages dans Windows via la ligne de commande? J'ai essayé de le rechercher, et tout ce que j'ai pu trouver, c'est que je devrais utiliser net, mais à part ça, il n'y a pas beaucoup de documentation.

En outre, dans ce partage, il y aura quelques répertoires avec les noms des utilisateurs sur le domaine, et je voudrais que les répertoires ne soient pas lisibles ou inscriptibles par quelqu'un d'autre. Par exemple, disons que j'ai deux répertoires: jsmithet jdoe. Je voudrais que l'utilisateur jsmithécrive et lise à partir du répertoire jsmith, mais pas du répertoire appelé jdoe, et vice versa.

Derek Maciel
la source

Réponses:

5

Ce devrait être l'information que vous recherchez:

::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

Vous pouvez également supprimer des autorisations ou modifier des autorisations sur le répertoire à l'aide de cacls.exe. Ma recommandation serait de lire sur cacls.exe

Cacls

http://technet.microsoft.com/en-us/library/bb490872.aspx

ou juste "cacls /?" à partir de la ligne de commande devrait également fonctionner.

matrixx333
la source
1
PERSIST_E_NT;)
michabbb
Qu'est-ce que l'option "/ PERSISTANT: OUI"?
Bouffon du roi
De Microsoft ( docs.microsoft.com/en-us/previous-versions/windows/it-pro/… ): contrôle l'utilisation des connexions réseau persistantes. La valeur par défaut est le paramètre utilisé en dernier. Les connexions sans devin ne sont pas persistantes. Oui enregistre toutes les connexions à mesure qu'elles sont établies et les restaure à la prochaine ouverture de session. Non n'enregistre pas la connexion en cours ou les connexions suivantes. Les connexions existantes sont restaurées à la prochaine ouverture de session. Utilisez / supprimer pour supprimer les connexions persistantes.
matrixx333
9

La commande que vous recherchez est net share. L' /?aide sur la commande est assez simple, mais voici un exemple:

net share MyShareName="C:\My Local Path\SomeFolder" /GRANT:Everyone,FULL

En ce qui concerne la sécurité, d'après ce que j'ai lu, la meilleure pratique consiste à faire comme ci-dessus, à accorder au groupe Tout le monde le contrôle total sur le partage , puis à gérer les autorisations sur les fichiers et les dossiers eux-mêmes. Cela est dû au fait que les autorisations de partage sont un filtre de restriction par-dessus les autorisations réelles de fichier et de dossier.

Jon Seigel
la source