Question
Users via fichier CSV + securité + dossier
- Christian Hess
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 15
- Remerciements reçus 0
il y a 15 ans 8 mois #7309
par Christian Hess
Users via fichier CSV + securité + dossier a été créé par Christian Hess
Bonjour à tous,
Je suis désireux d’améliorer mon script pour y ajouter des fonctionnalités. C’est là que j’ai besoin d’aide de votre part.
Je vous explique : le but que je cherche c’est d’ajouter un utilisateur dans une OU avec comme appartenance à un groupe de sécurité ainsi qu’activé le dial-in ou vpn. De plus il faudrait créer un répertoire avec des droit ntfs contenant l’utilisateur créé ainsi que des groupes de sécurité. La variable qui sera le nom du répertoire serra « $user.SamAccountName ». Mon scripte se met dans le bonne OU avec « $objOU », mais comment ajouter des groupes de sécurité qui sont dans une autre OU ?
Si il y a des références de pages de la version 2 du bouquin, je suis preneur. Ça me permettre de mieux comprendre comment faire.
D’avance je vous remercie de votre aide.
ci-dessous du code...
ficher csv:
[code:1]Name;SamAccountName;givenName;surname;Description;profilePath;scriptPath;HomeDrive
Bracame;Bracame;Edouard;Bracame;Compte utilisateur;;login.vbs;L:
Lapurée;Lapurée;Jérémie;Lapurée;Compte utilisateur;;login.vbs;L:
Ducable;Ducable;Jean Raoul;Ducable;Compte utilisateur;;login.vbs;L:
Larsouille;Larsouille;Joe;L'arsouille;Compte utilisateur;;login.vbs;L:
Posichon;Posichon;Paul;Posichon;Compte utilisateur;;login.vbs;L:
[/code:1]
sript powershell:
[code:1]# Create-User-eleves.ps1
param (
[string]$fichier=$(throw 'Vous devez fournir un fichier dont le
séparateur est la point virgule !')
)
$objOU=[ADSI]'LDAP://OU=essai02,OU=essai,DC=test2003,DC=ch'
[ADSI]'LDAP://OU=essai02,OU=essai,DC=test2003,DC=ch'
$users = import-csv $fichier -Delimiter ';'
$users
foreach ($user in $users)
{
# Nom de l'objet Active Directory
#$objUser = $objOU.Create('user', \"cn=$($user.Name)\"«»)
$objUser = $objOU.Create('user', \"cn=$($user.Name)\"«»)
# Définition du SAMAccountName
$objUser.put('samAccountName',$user.SamAccountName)
# Définition de l'USPN pour l'ouverture de session sécurisée
# Exemple : Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.
$objUser.put('userprincipalName', $user.SamAccountName + \"@florinfo.ch\"«»)
# Prénom
$objUser.put('GivenName', $user.givenName)
# Nom
$objUser.put('sn', $user.surname)
# Description
$objUser.put('description', $user.description)
# Chemin du profil Windows
if ($user.profilePath -ne '')
{
$objUser.put('profilePath', $user.profilePath)
}
# Logon Script
$objUser.put('scriptPath', $user.scriptPath)
# Home Drive
$objUser.put('homeDrive', $user.homeDrive)
# Home Path
$objUser.put('homeDirectory', $user.homeDirectory + \"\\" + $user.SamAccountName)
# home drive
$objUser.put('homeDrive', $user.homeDrive)
# company
$objUser.put('Company', \"test\"«»)
# dail-in
$objUser.SetInfo()
# password ''
$objUser.SetPassword('')
$objUser.SetInfo()
# activer compte
$objUser.PSBase.InvokeSet('AccountDisabled', $False)
$objUser.SetInfo()
Write-Host \"Utilisateur $($user.SamAccountName) créé.\"
}
[/code:1]
Je suis désireux d’améliorer mon script pour y ajouter des fonctionnalités. C’est là que j’ai besoin d’aide de votre part.
Je vous explique : le but que je cherche c’est d’ajouter un utilisateur dans une OU avec comme appartenance à un groupe de sécurité ainsi qu’activé le dial-in ou vpn. De plus il faudrait créer un répertoire avec des droit ntfs contenant l’utilisateur créé ainsi que des groupes de sécurité. La variable qui sera le nom du répertoire serra « $user.SamAccountName ». Mon scripte se met dans le bonne OU avec « $objOU », mais comment ajouter des groupes de sécurité qui sont dans une autre OU ?
Si il y a des références de pages de la version 2 du bouquin, je suis preneur. Ça me permettre de mieux comprendre comment faire.
D’avance je vous remercie de votre aide.
ci-dessous du code...
ficher csv:
[code:1]Name;SamAccountName;givenName;surname;Description;profilePath;scriptPath;HomeDrive
Bracame;Bracame;Edouard;Bracame;Compte utilisateur;;login.vbs;L:
Lapurée;Lapurée;Jérémie;Lapurée;Compte utilisateur;;login.vbs;L:
Ducable;Ducable;Jean Raoul;Ducable;Compte utilisateur;;login.vbs;L:
Larsouille;Larsouille;Joe;L'arsouille;Compte utilisateur;;login.vbs;L:
Posichon;Posichon;Paul;Posichon;Compte utilisateur;;login.vbs;L:
[/code:1]
sript powershell:
[code:1]# Create-User-eleves.ps1
param (
[string]$fichier=$(throw 'Vous devez fournir un fichier dont le
séparateur est la point virgule !')
)
$objOU=[ADSI]'LDAP://OU=essai02,OU=essai,DC=test2003,DC=ch'
[ADSI]'LDAP://OU=essai02,OU=essai,DC=test2003,DC=ch'
$users = import-csv $fichier -Delimiter ';'
$users
foreach ($user in $users)
{
# Nom de l'objet Active Directory
#$objUser = $objOU.Create('user', \"cn=$($user.Name)\"«»)
$objUser = $objOU.Create('user', \"cn=$($user.Name)\"«»)
# Définition du SAMAccountName
$objUser.put('samAccountName',$user.SamAccountName)
# Définition de l'USPN pour l'ouverture de session sécurisée
# Exemple : Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.
$objUser.put('userprincipalName', $user.SamAccountName + \"@florinfo.ch\"«»)
# Prénom
$objUser.put('GivenName', $user.givenName)
# Nom
$objUser.put('sn', $user.surname)
# Description
$objUser.put('description', $user.description)
# Chemin du profil Windows
if ($user.profilePath -ne '')
{
$objUser.put('profilePath', $user.profilePath)
}
# Logon Script
$objUser.put('scriptPath', $user.scriptPath)
# Home Drive
$objUser.put('homeDrive', $user.homeDrive)
# Home Path
$objUser.put('homeDirectory', $user.homeDirectory + \"\\" + $user.SamAccountName)
# home drive
$objUser.put('homeDrive', $user.homeDrive)
# company
$objUser.put('Company', \"test\"«»)
# dail-in
$objUser.SetInfo()
# password ''
$objUser.SetPassword('')
$objUser.SetInfo()
# activer compte
$objUser.PSBase.InvokeSet('AccountDisabled', $False)
$objUser.SetInfo()
Write-Host \"Utilisateur $($user.SamAccountName) créé.\"
}
[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.050 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Users via fichier CSV + securité + dossier