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 compte utilisateur AD [PowerShell]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Stagiaire
    Inscrit en
    Juin 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Stagiaire

    Informations forums :
    Inscription : Juin 2018
    Messages : 2
    Par défaut Création compte utilisateur AD
    Bonjour,

    Je suis actuellement en stage et l'un de mes projets est de créer automatiquement des utilisateurs qui seront mit au bon endroit dans l'Active Directory via un script PowerShell avec un MDP généré aléatoirement, et en ajoutant l'utilisateur dans un ou plusieurs groupe(s)
    Je sollicite votre aide sur mon script que j'ai pondu sur plusieurs points, en espérant que vous puissiez m'éclairer.

    Le code commence de cette façon:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    foreach ($user in $users)
    {
    	$prenom = $user.prenom
    	$nom = $user.nom
    	$sousgroupe = $user.sousgroupe
    	$login = $user.prenom + "." + $user.nom
    	$nomcomplet = $user.prenom + " " + $user.nom
    	$petitprenom = $prenom.Substring(0,1) 
    	$petitnom = $nom.Substring(0,1)
    	$initiale = $petitprenom + $petitnom
    I)L'utilisation d'un switch pour placer mon utilisateur au bon endroit
    Selon l'information rentré dans le fichier CSV, l'utilisateur sera créé au bon endroit car il y a des OU dans des OU
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    switch($user.OU)
    	{
    		"Admins" {$OU = "OU=Admins, OU=Users, OU=Entreprise, DC=entreprise, DC=lgn"}
    		
    		"DefaultRacine" {$OU = "OU=Default, OU=Users, OU=Entreprise, DC=entreprise, DC=lgn"}
    		"Default3741" {$OU = "OU=3741, OU=Default, OU=Users, OU=Entreprise, DC=entreprise, DC=lgn"}
    etc
    II)J'ai du mal à utiliser la fonction de recherche pour savoir si l'utilisateur existe déjà ou non
    Si l'utilisateur qu'on crée a le même nom + prénom que celui dans la base alors on passe à la création de l'utilisateur suivant
    Si l'utilisateur été déjà créé auparavant, on devra récupérer son numéro de matricule en la stockant dans $nummat

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $SearchUser = Get-ADUser -Filter {SamAccountName -eq $login} -SearchBase $OU
    	
    	if ($SearchUser -ne $login)
    	{
    		Write-Host "L'utilisateur n'existe pas, création.."
    	}
    	else
    	{
    		Write-Host "L'utilisateur " + $nomcomplet + " " + $nummat + " existe déjà*"
    		continue
    	}
    III)Je voudrais savoir comment utiliser la fonction Add-ADGroupeMember car les groupes sont mit dans des OU qui sont eux mêmes dans des OU car il y a une centaine de groupe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    if ($sousgroupe -contains "AD01")
    	{
    		Add-ADGroupMember -Identity GG_Extenda_Project_Admins -Path "OU=Admins, OU=Groups, OU=Entreprise, DC=entreprise, DC=lgn" -Members $login
    	}
    	if ($sousgroupe -contains "AD02")
    	{
    		Add-ADGroupMember -Identity GG_Glory_Project_Admins -Path "OU=Admins, OU=Groups, OU=Entreprise, DC=entreprise, DC=lgn" -Members $login
    	}
    etc..
    IV)Et enfin essayer de se connecter pour vérifier s'il a bien été créé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    try 
    	{
    		New-ADUser -Name $nomcomplet -SamAccountName $login -UserPrincipalName $login -DisplayName $nomcomplet -GivenName $prenom -Surname $nom -AccountPassword (ConvertTo-SecureString $password -AsPlainText -Force) -Path $OU -Enabled $true
    		echo "Utilisateur ajouté :" + $nomcomplet " et le mot de passe: " + password
    	}
    
    	catch
    	{
    		echo "Utilisateur non ajouté :" + $nomcomplet
    	}
    Merci d'avance pour la lecture de ce post et vos réponses s'il y en a
    En vous souhaitant une bonne journée

  2. #2
    Candidat au Club
    Homme Profil pro
    Stagiaire
    Inscrit en
    Juin 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Stagiaire

    Informations forums :
    Inscription : Juin 2018
    Messages : 2
    Par défaut
    Bonjour,

    J'ai reçu à comprendre certains points par différents tests et à corriger des erreurs. Une partie de mon script ne fonctionne pas correctement.
    J'aimerais par exemple qu'un utilisateur X et un Y lorsqu'ils sont créés soit dans plusieurs groupes à la fois, je pensais faire de la façon suivant:
    Par exemple j'écris dans mon fichier CSV en dessous de sousgroupe ceci pour l'utilisateur X: AD01-AD07-AD09 et ceci pour l'utilisateur Y:AD01-AD05 et le script devra ajouter X dans les 3groupes et Y dans les 2 groupes or il n'ajoute l'utilisateur que dans un seul groupe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    if ($sousgroupe -contains "AD01")
    	{
    		Add-ADGroupMember -Identity "CN=GG_Extenda_Project_Admins, OU=Admins, OU=Groups, OU=Entreprise, DC=entreprise, DC=lgn" -Members $login
    	}
    	if ($sousgroupe -contains "AD02")
    	{
    		Add-ADGroupMember -Identity "CN=GG_Glory_Project_Admins, OU=Admins, OU=Groups, OU=Entreprise, DC=entreprise, DC=lgn" -Members $login
    	}
    	if ($sousgroupe -contains "AD03")
    	{
    		Add-ADGroupMember -Identity "CN=GG_Hanshow_Project_Admins, OU=Admins, OU=Groups, OU=Entreprise, DC=entreprise, DC=lgn" -Members $login
    	}
    Merci par avance

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. création comptes utilisateurs
    Par alouha dans le forum Ubuntu
    Réponses: 3
    Dernier message: 12/11/2008, 16h30
  2. Création compte utilisateur limité
    Par kikoo_of_dijon dans le forum Debian
    Réponses: 1
    Dernier message: 21/09/2007, 21h09
  3. [LDAP] Erreur création compte utilisateur
    Par Invité dans le forum API standards et tierces
    Réponses: 9
    Dernier message: 09/10/2006, 17h27
  4. Création comptes utilisateurs
    Par Sheva7 dans le forum Access
    Réponses: 1
    Dernier message: 20/06/2006, 21h46
  5. [C#] Création compte utilisateur FTP
    Par slopera dans le forum Windows Forms
    Réponses: 8
    Dernier message: 29/03/2006, 10h34

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