Récemment, j’ai eu besoin de créer des comptes utilisateurs et de gérer le mot de passe associé en mode commande sous Windows XP. Cet article est un petit mémo pour y retrouver facilement les infos nécessaires.

Pour simplifier la création de plusieurs comptes, j’ai également créer un script Batch ce qui change énormément de sh, bash et perl que j’utilise habituellement sous Unix et GNU/Linux.

Pour créer un compte il faut utiliser la commande net user selon la syntaxe suivante :

    C:\Documents and Settings\yvon\Mes documents>net user /?
    La syntaxe de cette commande est:


    NET USER
    [nom d'utilisateur [mot de passe | *] [options]] [/DOMAIN]
             nom d'utilisateur {mot de passe | *} /ADD [options] [/DOMAIN]
             nom d'utilisateur [/DELETE] [/DOMAIN]

Ce qui donne pour créer l’utilisateur toto avec comme password titi :

    net user toto titi /add

Pour rajouter les droits d’administration à cet utilisateur, on utilise la commande net localgroup :

    C:\Documents and Settings\yvon\Mes documents>net localgroup /?
    La syntaxe de cette commande est:


    NET LOCALGROUP
    [nom de groupe [/COMMENT:"texte"]] [/DOMAIN]
                     nom de groupe {/ADD [/COMMENT:"texte"] | /DELETE}  [/DOMAIN]
                     nom de groupe nom [...] {/ADD | /DELETE} [/DOMAIN]

Donc pour affecter l’utilisateur toto dans le groupe des administrateurs :

    net localgroup Administrateurs toto /add

Sur une machine installée en Anglais, il faut remplacer Administrateurs par Administrators.

Pour créer plusieurs comptes, j’ai créé le cript suivant :

    echo OFF

    rem ######################################
    rem password identique pour tous les comptes
    set pass=bonjour

    rem ######################################
    rem boucle de creation
    for %%C in (lundi mardi mercredi) do (
    echo Creation du compte %%C avec le password %pass%
    net user %%C %pass% /add
    net localgroup Administrateurs %%C /add
    )

Il va créé les utilisateurs lundi, mardi et mercredi, ils seront tous administrateurs de la machine et ils auront tous le même password bonjour.

Pour obtenir plus d’aide sur la fonction net user :

    C:\Documents and Settings\yvon\Mes documents>net help user
    La syntaxe de cette commande est:


    NET USER
    [nom d'utilisateur [mot de passe | *] [options]] [/DOMAIN]
     nom d'utilisateur {mot de passe | *} /ADD [options] [/DOMAIN]
     nom d'utilisateur [/DELETE] [/DOMAIN]

    NET USER cre ou modifie des comptes d'utilisateur sur des serveurs.
    Employe sans argument, NET USER liste les comptes d'utilisateur du
    serveur, stocks dans la base de donnes des comptes d'utilisateur.

    Cette commande ne fonctionne que sur les serveurs.


    nom d'utilisateur   Est le nom du compte d'utilisateur  ajouter, supprimer,
     modifier ou examiner. Ce nom ne doit pas dpasser
     20 caractres.
    mot de passe        Affecte un mot de passe (14 caractres maximum) au
     compte de l'utilisateur ou modifie le mot de passe
     existant. Un mot de passe doit satisfaire  la condition
     de longueur minimale impose par l'option /MINPWLEN
     de la commande NET ACCOUNTS.
    *                   Affiche un message demandant le mot de passe, afin
     d'viter son affichage lorsque vous le tapez.
    /DOMAIN             Accomplit l'opration sur le contrleur du domaine
     courant.
     Ce paramtre ne s'applique qu'aux ordinateurs Windows NT
     Workstation membres d'un domaine Windows NT Server. Par
     dfaut, les ordinateurs excutant Windows NT Server
     accomplissent les oprations sur le contrleur du
     domaine.
    /ADD                Ajoute un compte d'utilisateur dans la base de donnes.
    /DELETE             Supprime un compte d'utilisateur dans la base de
     donnes.

    Options             Les options suivantes sont disponibles :

     Options                    Description
     --------------------------------------------------------------------
     /ACTIVE:{YES | NO}         Active (YES) ou dsactive (NO) le compte.
     Si le compte est dsactiv, l'utilisateur ne
     peut pas accder au serveur. La valeur par
     dfaut est YES.
     /COMMENT:"texte"           Permet de rdiger un commentaire descriptif
     (maximum 48 caractres) sur le compte. Placez
     ce texte entre guillemets anglo-saxons (").
     /COUNTRYCODE:nnn           Emploie le code de pays du systme
     d'exploitation pour spcifier la langue 
     employer dans les messages d'aide et d'erreur
     d'un utilisateur. La valeur 0 signifie le code
     de pays par dfaut.
     /EXPIRES:{date | NEVER}    Permet de spcifier si le compte doit expirer
     une certaine date ou s'il n'y a pas de
     limite  la validit du compte (NEVER). La
     date d'expiration s'exprime sous la forme
     mm/jj/aa ou jj/mm/aa selon le code de pays.
     Le mois peut tre un nombre, un nom en toutes
     lettres ou une abrviation de trois lettres.
     L'anne peut tre spcifie par deux ou quatre
     chiffres. Employez des barres obliques (/)
     (pas d'espaces) comme sparateurs.
     /FULLNAME:"nom"            Permet de fournir le nom dtaill d'un
     utilisateur. Tapez ce nom entre guillemets
     anglo-saxons (").
     /HOMEDIR:chemin            Spcifie le chemin du rpertoire de base de
     l'utilisateur. Ce chemin doit exister.
     /PASSWORDCHG:{YES | NO}    Autorise (YES) ou non (NO) l'utilisateur 
     changer de mot de passe. La valeur par dfaut
     est YES.
     /PASSWORDREQ:{YES | NO}    Dtermine si un compte doit avoir un mot de
     passe. La valeur par dfaut est YES.
     /PROFILEPATH[:chemin]      Dfinit un chemin pour le profil d'accs de
     l'utilisateur.
     /SCRIPTPATH:nom de chemin  Spcifie le nom du fichier contenant le script
     d'accs de l'utilisateur.
     /TIMES:{horaires | ALL}    Dfinit les horaires d'accs sous la forme
     jour[-jour][,jour[-jour]],heure[-heure][,heure
     [-heure]]. Ne spcifiez que des heures pleines
     sur 12 heures (avec les prfixes am, pm, a.m.
     et p.m.) ou 24 heures. Les jours peuvent tre
     abrgs. ALL indique que l'accs est autoris
     toute heure et la valeur nulle (en blanc)
     que l'accs n'est jamais autoris. Sparez
     les parties jour et heure d'un horaire par
     une virgule et employez un point-virgule pour
     sparer plusieurs horaires.
     /USERCOMMENT:"texte"       Permet  un administrateur d'ajouter ou de
     modifier le Commentaire utilisateur du compte.
     /WORKSTATIONS:{nom d'ordinateur[,...] | *}
     Liste les stations (maximum 8)  partir
     desquelles un utilisateur peut accder au
     rseau. Spcifiez un astrisque (*) ou une
     liste vide pour n'imposer aucune restriction.

    NET HELP commande | MORE affiche l'aide cran par cran.

    C:\Documents and Settings\yvon\Mes documents>