IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Création de plusieurs comptes UserAD OU associées et Password differents pour chaque User


Sujet :

Scripts/Batch

  1. #1
    Candidat au Club
    Femme Profil pro
    Responsable d'exploitation informatique
    Inscrit en
    Octobre 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Responsable d'exploitation informatique

    Informations forums :
    Inscription : Octobre 2017
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Création de plusieurs comptes UserAD OU associées et Password differents pour chaque User
    Bonjour à tous,

    je souhaiterais créer un script qui importe les données de mon fichier .csv
    Jusque là OK
    Mais je bloque, j'explique:

    Je dois créer 100 users AD
    dans mon fichier .csv j'ai les colonnes suivantes:
    Societe name displayname acountpassword

    je dois créer les OU en fonction du nombre de sociétés (Une société = 1 OU)
    Et je dois attribuer un password différent pour chaque UserAD

    J'ai trouvé ceci mais, je vois que ce script ne gère que la création des comptes utilisateurs dans une même OU avec un mot de passe unique

    Pouvez-vous m'aider SVP je ne suis pas un expert PS

    Je vous remercie d'avance


    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Import-Module ActiveDirectory
    $path = Split-Path -parent $MyInvocation.MyCommand.Definition
    $ou = "OU=users,OU=demo,DC=demo1,DC=local"
    $upnsuffix = "@demo1.local"
    $securepwd = ConvertTo-SecureString "Pass/123" -AsPlainText -Force
    Import-Csv "$path\adusers.csv" | Select-Object *,
            @{Name="Name"; Expression={$_.GivenName+" "+$_.Surname}},
            @{Name="Path"; Expression={$ou}},
            @{Name="DisplayName"; Expression={$_.GivenName+" "+$_.Surname}},
            @{Name="UserPrincipalName"; Expression={$_.SamAccountName+$upnsuffix}},
            @{Name="AccountPassword"; Expression={$securepwd}},
            @{Name="Enabled"; Expression={$true}} | New-ADUser

  2. #2
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 281
    Points : 520
    Points
    520
    Par défaut
    salut ALexBomb

    dans mon fichier .csv j'ai les colonnes suivantes:
    Societe name displayname acountpassword
    je vais considéré dans les scripts que account et password sont séparait

    J'ai trouvé ceci mais, je vois que ce script ne gère que la création des comptes utilisateurs dans une même OU avec un mot de passe unique
    je t'ai modifier le script pour l'ou et le password
    je te laisse faire le reste des modifications qui sont assez simple : name, DisplayName, Account ou plutôt UserPrincipalName

    le principe pour le reste est le même
    - la variable $_ contient une ligne de ton fichier
    - le point puis le mot qui suit est le nom de la colonne de ton fichier csv (exemple pour la colonne societe : $_.societe)

    pour l'OU comme je n'ai pas d'info sur le fichier, je part sur le principe que ce n'est pas au format DistinguishedName
    sinon il te faudra le modifier comme ça : $_.societe}

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Import-Module ActiveDirectory
    $path = Split-Path -parent $MyInvocation.MyCommand.Definition
    $upnsuffix = "@demo1.local"
    Import-Csv "$path\adusers.csv" | Select-Object *,
            @{Name="Name"; Expression={$_.GivenName+" "+$_.Surname}},
            @{Name="Path"; Expression={"OU="+$_.societe+",OU=demo,DC=domaine,DC=local"}},                 ######  modif pour l'OU (la société)
            @{Name="DisplayName"; Expression={$_.GivenName+" "+$_.Surname}},
            @{Name="UserPrincipalName"; Expression={$_.SamAccountName+$upnsuffix}},
            @{Name="AccountPassword"; Expression={ConvertTo-SecureString $_.password -AsPlainText -Force}},   ######  modif pour le mot de passe
            @{Name="Enabled"; Expression={$true}} | New-ADUser

    je dois créer les OU en fonction du nombre de sociétés (Une société = 1 OU)
    pour cette partie, il y a plus de travail et l'intégré au premier script se serait compliqué la vie !
    je te propose donc une version modifier du script que tu a donner

    je ne connais pas ton infra mais le mieux c'est de faire une boucle avec ton ficher CSV en regroupent les noms de sociétés et de créé les OU a partir de ce résultat,
    et bien sur a exécuter avant de créé les utilisateurs !!
    si je part de la base du script précédent toujours sur sur le principe que dans le CSV societe n'est pas un DistinguishedName

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Import-Module ActiveDirectory
    $path = Split-Path -parent $MyInvocation.MyCommand.Definition
    Import-Csv "$path\adusers.csv" | Select-Object societe | Group-Object societe | Select-Object *,
            @{Name="Path"; Expression={"OU=demo,DC=demo1,DC=local"}} | ######  a modifier pour avoir le path de l'OU ou seront créé les OUs 
            New-ADOrganizationalUnit

    il n'y a pas de gestion d'erreur dans ton script
    donc si il y des OU ou des utilisateurs avec le même nom tu aura des messages d'erreurs sans pour autant bloquer la création des autre utilisateurs !
    exemple
    New-ADOrganizationalUnit : Une tentative d’ajout d’un objet dans l’annuaire avec un nom déjà utilisé s’est produite

    voila si tu a d'autre question n'hésite pas !

Discussions similaires

  1. Réponses: 3
    Dernier message: 29/10/2013, 15h44
  2. Réponses: 1
    Dernier message: 06/05/2013, 17h47
  3. [WS 2003] Création de plusieurs comptes à partir d'excel
    Par ecoinfo dans le forum Windows Serveur
    Réponses: 1
    Dernier message: 27/01/2010, 09h13
  4. Création automatique de plusieurs boutons avec macro associées
    Par barjovial dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 17/06/2008, 09h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo