Autorisations dossier partagé avec batch

Résolu
Bonjour,

Je suis sous Windows 2003 Serveur, j'aurais voulu savoir
s'il existe une commande shell pour donner des autorisations (R/W) de partage pour des utilisateurs ?
Je précise que je NE VEUX PAS des autorisations de sécurité NTFS, mais bien de partage.

J'ai cherché tout l'après midi, (google is my friend) mais sans résultat concluant:
- J'ai testé rmtshare, qui me semble t-il, a fonctionné pour des droits en lecture
mais malheureusement pas en écriture (peu d'aide sur la syntaxe, version obsolète ... ?)
- net share ... /grant, mais là l'option grant ne semble pas reconnue par mon serveur;
peut être existe t-il une mise à jour pour la commande net ?
- cacls et xcacls qui ne sont pas adaptés pour le partage

Bref ! Je ne sais plus quoi faire ...

Si j'arrive à trouver cette fichue commande,
cela m'épargnera des heures pour mettre les droits de partages sur les dossiers ...

Donc, si quelqu'un ou quelqu'une a une idée ...

Je vous remercie d'avance
Configuration: Windows XP
Firefox 2.0

6 réponses

  1. Contributeur
    Bonjour à tous,

    Juste un petit coucou pour clôturer ce post ouvert il y a 1 an ...

    Concernant NET SHARE je n'ai plus approfondi la question.

    Par contre je me sert régulièrement de RMTSHARE.EXE.
    Le programme à télécharger ainsi que la syntaxe sont disponibles ici:
    http://membres.multimania.fr/fgilain/nt4RkTools/rmtshare.html

    Allez, je joins un script batch avec quelques explications:
    rem rappel un partage finissant pas $, cache celui ci (mais reste tout de meme accessible)  
    set fqdn=mon_domaine_pleinement_qualifie  
    set sname=mon_dossier_a_partager  
    set groupAdmin=Administrateurs  
    set groupTeach=Formateurs  
    rem droits de partage possibles: "Read";"Full Control";"Change"  
    set perm="Full Control"  
    set remark="Partage auto cree le %date% a %time:~0,8%"  
    
    rem On supprime tous les droits de partage pour le dossier a partager  
    call RMTSHARE \\%COMPUTERNAME%\%sname%$ /delete  
    
    set com=  
    set com=%com% \\%COMPUTERNAME%\%sname%$=%userHome%\%sname% /remark:%remark%  
    rem Pour autoriser l'administrateur  
    set com=%com% /grant "%groupAdmin%":%perm%  
    rem Pour autoriser un eleve particulier  
    set com=%com% /grant "%sname%@%fqdn%":%perm%  
    rem Pour autoriser les formateurs  
    set com=%com% /grant "%USERDOMAIN%\%groupTeach%":%perm%  
    
    call RMTSHARE %com%  
    


    Voili voilou
    Espérant que mon travail pourra servir à quelque uns d'entre vous ...

    cordialement
    lnj

    La transe c'est l'immensité de l'intime...
    1. Merci!
    2. Contributeur
      Oh mais de rien ...
  2. Contributeur
    Bonjour Ktz,

    Je viens de m'y remettre et je re-confirme :
    le commutateur /GRANT est inconnu de ma version de NET SHARE !

    Quand j'ouvre une invite de commande et que je tape:
    NET SHARE /?
    Voilà ce que j'obtiens:
    NET SHARE
    nom de partage
    nom de partage=lecteur:chemin [ / USERS:nombre | / UNLIMITED]
    [/ REMARK:"texte"]
    [/ CACHE:Manual | Documents| Programs | e ]
    nom de partage [/ USERS:nombre | / UNLIMITED]
    [/ REMARK:"texte"]
    [/ CACHE:Manual | Documents | Programs | None]
    {nom de partage | nom de périphérique | lecteur:chemin} / DELETE


    Mais pas l'ombre de /GRANT ...

    De plus je ne connais pas ma version de NET SHARE ...
    (si vous savez comment la trouver ...)

    Peut être faudrait il télécharger une mise à jour ...
    (mais comment ?)

    Bref je continue à chercher,
    si vous avez d'autres pistes j'en serais ravi...

    Cordialement
    lenainjaune
    1. Contributeur
      Merci beaucoup pour l'info Ktz !

      Cela fait un bout de temps que je n'ai plus cherché à résoudre ce problème.
      Dès la rentrée je me remettrai dedans et je testerai ...

      Cordialement
      1. La syntaxe de cette commande est :

        NET SHARE
        nom_partage
        nom_partage=lecteur:chemin
        [/GRANT:utilisateur,[READ | CHANGE | FULL]]
        | /UNLIMITED
        /REMARK:"texte"
        | Documents| Programs | None
        nom_partage | /UNLIMITED
        /REMARK:"texte"
        | Documents | Programs | None
        {nom_partage | nom_périphérique | lecteur:chemin} /DELETE