Script ajout utilisateur AD [Résolu]

Signaler
-
 Tulkas -
Bonjour,
Je suis actuellement en formation de technicien informatique et j'aurais besoin de votre aide pour un script.

J'expose mon petit souci ( qui risque d'en faire rire certain ).

Je dois créer un script ( dynamique ) pour la création de nouvel utilisateur Active Directory avec création d'un dossier partagé.

J'ai bien créer ce script :

$nom = Read-host "Merci de Rentrer le Nom et le Prénom de l'Utilisateur à créer"
$login = Read-host "Merci de Rentrer le Login de l'Utilisateur à créer"
$mdp = Read-host "Merci de Rentrer le Mot de Passe de l'Utilisateur à Créer"
New-ADUser -Name $nom -SamAccountName $login -UserPrincipalName $***@*** -AccountPassword (ConvertTo-SecureString -AsPlainText $mdp -Force) -ChangePasswordAtLogon $true -Enabled $true
New-SmbShare -Name $login -Path C:\Users\Administrateur\Documents\Partage -FullAccess $***@***


Mon premier probleme et que l'utilisateur se créé dans "user" alors que je souhaiterai qu'il sois créé directement dans un groupe particulier.
par exemple : utilisateur "jojo" soit créé dans le groupe "Direction Général"
utilisateur "sam" dans le groupe "Assistant de Direction" etc...
Mon second probleme est que le dossier partagé est bien créé mais il n'apparait pas à l'ouverture de la session, je dois ouvrir un dossier et aller le cherché afin de le mettre sur le bureau.
De plus les droits d'accé ne luis sont pas accordé.

Cela peut parraitre simple à réaliser pour des passiner mais pour des néophite comme mois, c'est le bout du monde.

Par avance merci de tout aide apporté.

6 réponses

Messages postés
38462
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
28 avril 2021
1 959
Bonjour
Nous ne sommes pas là pour se moquer..
Ceci dit, tu as un manque certain de compréhension concernant le fonctionnement de AD.
Ce qui forcément t'handicape pour créer ton script.

Par défaut tous les utilisateurs AD sont membres du groupe utilisateurs du domaine. donc là pas le choix.

Si tu veux qu'ils soient membres d'autres groupes, c'est tout à fait possible, à condition que ces groupes existent bien et que dans ton script, tu le prévoies.. donc création du groupe si besoin et ajout de l'utilisateur par la suite.

Concernant ton partage de dossier, il ne doit pas se faire en local mais par définition sur un serveur en partage par réseau. Ce qui permet d'utiliser n'importe quelle station de travail membre du domaine. Ne surtout pas utiliser comme tu le fais un répertoire dans les documents d'un administrateur.

Les autorisations seront liées au niveau du partage réseau (Share) mais également les autorisation au niveau répertoire NTFS (RWX).

Pour donner l'accès aux dossiers partager la règle est de ne jamais donner un accès aux ressources directement à un utilisateur mais bien à un groupe d'accès aux ressources.

Donc pour ton utilisateur: Il doit faire partie d'un groupe dit de "service" qui détermine les utilisateurs qui travaillent ensemble (Admin, RH, Compte, etc...), en fonction du type d'accès aux ressources, il faut créer des groupe d'accès (RWX).

Ce qui donne;

User -> Service Groupe -> Ressource Groupes (RWX) -> Ressource.

un lien vers la bible powershell

https://docs.microsoft.com/en-us/powershell/module/activedirectory/new-aduser?view=windowsserver2019-ps









Messages postés
38462
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
28 avril 2021
1 959
bon, de ce que je peux commprendre ...
$login ne donne pas le lien vers l'utilisateur créé.
Cela ne signifie rien pour l'AD.
Tu dois aller rechercher la référence de "l'objet" utilisateur dans l'AD.
essaye de lister tes utilisateurs

Get-ADUser


Et tu peux utiliser les filtres pour l'identifier

Exemple:

Get-ADUser -Filter * -SearchBase $OU | Select-Object SamAccountName, distinguishedName




Merci pour ces précisions.
j'ai réussi plus ou moins.
la commande : Nex-smbshare -name ... -path..-fullaccess -ChangeAcess etait necessaire sauf que le ChangeAccess ne fontionne pas.
Messages postés
38462
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
28 avril 2021
1 959
montre moi ta commande complète svp
Utilise les balise de code pour plus de clarté.

Bonjour,
voici ce que j'ai fait:

# Script V1
# Description: Script pour ajouter un utilisateur avec mot de passe, l'ajouter dans un groupe et création d'un dossier et partagé en son nom.

#NOM et Prenom affichés dans la liste des utilisateurs
$infos = Read-Host "NOM et le Prénom de l’Utilisateur"

#Nom de famille de l'utilisateur, inscrit dans sa fiche d'utilisateur.
$nom = Read-Host "Indiquer le nom de famille de l'utilisateur"

#Prenom de l'utilisateur, inscrit dans sa fiche d'utilisateur.
$prenom = Read-Host "Indiquer le prénom de l'utilisateur"

#Login pour ouvrir sa session sur son poste de travail
$login = Read-Host "Le Login de l'utilisateur"

#Mot de passe pour ouvrir sa session sur son poste de travail
$pass = Read-Host "Mot de passe pour l'utilisateur"

#Intègre l'utilisateur dans un groupe déjà créer dans le domaine.
$groupe = Read-Host "Indiquer le groupe dans lequel l'utilisateur doit être (Responsable Cadres, Stagiaire MKT...)"

#Ligne qui indiquera où mettre le dossier partagé de l'utilisateur
$path = "C:\GROUPES\$($groupe)"

#Ligne de commande qui va prendre toutes informations du dessus pour créer l'utilisateur
New-ADUser -Name $infos -SamAccountName $login -UserPrincipalName $login -GivenName $prenom -Surname $nom -AccountPassword (ConvertTo-SecureString -AsPlainText $pass -Force) -ChangePasswordAtLogon $true -Enabled $true

#Intégrer l'utilisateur au groupe demandé
Add-ADGroupMember -Identity $groupe -Members $login

#Création d'un dossier qui sera dans C:\SAUVEGARDES\$groupe (grâce à $path tout en haut) avec comme nom ton login.
New-Item -ItemType directory -Name $login -Path $path
write-host $path

#Partage du dossier nouvellement créer pour l'utilisateur (Modifications pour l'utilisateur, contrôle total pour groupe administrateurs, aucun accès pour tout le monde)
New-SmbShare -Name $login$ -Path "C:\GROUPES\$($groupe)\$($login)" -FullAccess "Administrateurs" -ChangeAccess "$login"

#Petit texte de fin qui indiquera que l'utilisateur qui comporte tel login et ainsi que son dossier créer.
Write-Host "L'utilisateur $infos à bien été ajouté à la liste des utilisateurs, son identifiant est $login, son dossier partagé est $path\$login"

# Code de sortie du script. Si 0 alors le script c'est correctement executé
$LASTEXITCODE
Merci beaucoup, je vais essayer.