Question
Conseil sur un script
- ShizuCorp
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 49
- Remerciements reçus 0
il y a 8 ans 5 mois #24704
par ShizuCorp
Conseil sur un script a été créé par ShizuCorp
Bonjour,
J'ai fais un script pour l'entreprise où je suis en stage et j'aimerais savoir si d'après vous il est fonctionnel ?
Etant stagiaire je n'est pas les autorisations requise pour éxécuté un script, merci de votre intentions et de vos éventuels conseils!
[code:1]
#Force l'éxécution du script
Set-ExecutionPolicy RemoteSigned
#Importation du module Active Directory
Import-module ActiveDirectory
Write-Host \"Module Active Directory chargé!\"
#Importation du fichier CSV
$user = Import-CSV \"C:\Users\stagiaireinfo\Desktop\adcsvuser.csv\"
Write-Host \"Fichier importé correctement!\"
# Convertir le mot de passe en chaine securisee
$securePassword = ConvertTo-SecureString \"Teststagiaire!\" -AsPlainText -Force
#Boucle du reccueil des informations
foreach($user in $users) {
$fname = $user.\"First Name\"
$lname = $user.\"Last Name\"
$office = $user.\"office\"
$department = $user.\"department\"
$jtitle = $user.\"Job Title\"
$darrive = $user.\"date_arr\"
$dfin = $user.\"date_fin\"
$entite = $user.\"entite\"
$particularite = $user.\"particularite\"
$addpostale = $user.\"address_post\"
$environnement = $user.\"environnement\"
$tordi = $user.\"type_ordi\"
$tmobile = $user.\"mobile\"
$tablette = $user.\"tablette\"
$imptci = $user.\"impr_tci\"
$dnpau = $user.\"dispo_nomprenom_ancien_utili\"
$prt = $user.\"prise_reseau_telephonique\"
$arsa = $user.\"acces_rsa\"
$sapbw = $user.\"sap_bw\"
$saphollande = $user.\"sap_hollande\"
$x3sage = $user.\"x3_sage\"
$internet = $user.\"internet\"
$oscar = $user.\"oscar\"
$notilus = $user.\"notilus\"
$faxdemat = $user.\"fax_demat\"
$description = $user.\"Descritption\"
$impr = $user.\"imprimante\"
$icolor = $user.\"imprcouleur\"
$lotus = $user.\"lotus\"
$recepmailext = $user.\"recepmailext\"
$envmailext = $user.\"envmailext\"
$taccsap = $user.\"typeaccsap\"
$csap = $user.\"comptesap\"
$nmaint = $user.\"newmaint\"
$nmadm = $user.\"nmadmin\"
$nmmodinter = $user.\"nmmodinter\"
$samaccountname = $user.\"SamAccountName\"
$password = $user.\"password\"
$OUpath = $user.\"Organizational Unit\"
#Création des utilisateurs Active Directory pour les utilisateurs du fichier CSV
New-ADUser -Name \"$fname $lname\" -GivenName $fname -Surname $lname -UserPrincipalName \"$fname.$lname\" -Path $OUpath -AccountPassword $securePassword -ChangePasswordAtLogon $True -Description $description -Enable $True -office $office -department $department -date_arr $darrive -date_fin $dfin -entite $entite -particularite $particularite -address_postale $addpostale -environnement $environnement -type_ordi $tordi -tablette $tablette -impr_tci $imptci -dispo_nomprenom_ancien_utili $dnpau -prise_reseau_telephonique $prt -acces_rsa $arsa -sap_bw $sapbw -sap_hollande $saphollande -x3_sage $x3sage -internet $internet -oscar $oscar -notilus $notilus -fax_demat $faxdemat -imprimante $impr -imprcouleur $icolor -lotus $lotus -recepmailext $recepmailext -envmailext $envmailext -typeaccsap $taccsap -comptesap $csap -newmaint $nmaint -nmadmin $nmadmin -nmmodinter $nmmodinter -password $password -samaccountname $SamAccountName
#Requête d'echo pour chaque utilisateurs créer
echo \"Compte créer pour l'utilisateur $fname $lname dans $OUpath avec succès!\"
}
[/code:1]<br><br>Message édité par: ShizuCorporation, à: 19/12/17 09:35
J'ai fais un script pour l'entreprise où je suis en stage et j'aimerais savoir si d'après vous il est fonctionnel ?
Etant stagiaire je n'est pas les autorisations requise pour éxécuté un script, merci de votre intentions et de vos éventuels conseils!
[code:1]
#Force l'éxécution du script
Set-ExecutionPolicy RemoteSigned
#Importation du module Active Directory
Import-module ActiveDirectory
Write-Host \"Module Active Directory chargé!\"
#Importation du fichier CSV
$user = Import-CSV \"C:\Users\stagiaireinfo\Desktop\adcsvuser.csv\"
Write-Host \"Fichier importé correctement!\"
# Convertir le mot de passe en chaine securisee
$securePassword = ConvertTo-SecureString \"Teststagiaire!\" -AsPlainText -Force
#Boucle du reccueil des informations
foreach($user in $users) {
$fname = $user.\"First Name\"
$lname = $user.\"Last Name\"
$office = $user.\"office\"
$department = $user.\"department\"
$jtitle = $user.\"Job Title\"
$darrive = $user.\"date_arr\"
$dfin = $user.\"date_fin\"
$entite = $user.\"entite\"
$particularite = $user.\"particularite\"
$addpostale = $user.\"address_post\"
$environnement = $user.\"environnement\"
$tordi = $user.\"type_ordi\"
$tmobile = $user.\"mobile\"
$tablette = $user.\"tablette\"
$imptci = $user.\"impr_tci\"
$dnpau = $user.\"dispo_nomprenom_ancien_utili\"
$prt = $user.\"prise_reseau_telephonique\"
$arsa = $user.\"acces_rsa\"
$sapbw = $user.\"sap_bw\"
$saphollande = $user.\"sap_hollande\"
$x3sage = $user.\"x3_sage\"
$internet = $user.\"internet\"
$oscar = $user.\"oscar\"
$notilus = $user.\"notilus\"
$faxdemat = $user.\"fax_demat\"
$description = $user.\"Descritption\"
$impr = $user.\"imprimante\"
$icolor = $user.\"imprcouleur\"
$lotus = $user.\"lotus\"
$recepmailext = $user.\"recepmailext\"
$envmailext = $user.\"envmailext\"
$taccsap = $user.\"typeaccsap\"
$csap = $user.\"comptesap\"
$nmaint = $user.\"newmaint\"
$nmadm = $user.\"nmadmin\"
$nmmodinter = $user.\"nmmodinter\"
$samaccountname = $user.\"SamAccountName\"
$password = $user.\"password\"
$OUpath = $user.\"Organizational Unit\"
#Création des utilisateurs Active Directory pour les utilisateurs du fichier CSV
New-ADUser -Name \"$fname $lname\" -GivenName $fname -Surname $lname -UserPrincipalName \"$fname.$lname\" -Path $OUpath -AccountPassword $securePassword -ChangePasswordAtLogon $True -Description $description -Enable $True -office $office -department $department -date_arr $darrive -date_fin $dfin -entite $entite -particularite $particularite -address_postale $addpostale -environnement $environnement -type_ordi $tordi -tablette $tablette -impr_tci $imptci -dispo_nomprenom_ancien_utili $dnpau -prise_reseau_telephonique $prt -acces_rsa $arsa -sap_bw $sapbw -sap_hollande $saphollande -x3_sage $x3sage -internet $internet -oscar $oscar -notilus $notilus -fax_demat $faxdemat -imprimante $impr -imprcouleur $icolor -lotus $lotus -recepmailext $recepmailext -envmailext $envmailext -typeaccsap $taccsap -comptesap $csap -newmaint $nmaint -nmadmin $nmadmin -nmmodinter $nmmodinter -password $password -samaccountname $SamAccountName
#Requête d'echo pour chaque utilisateurs créer
echo \"Compte créer pour l'utilisateur $fname $lname dans $OUpath avec succès!\"
}
[/code:1]<br><br>Message édité par: ShizuCorporation, à: 19/12/17 09:35
Connexion ou Créer un compte pour participer à la conversation.
- ShizuCorp
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 49
- Remerciements reçus 0
il y a 8 ans 5 mois #24709
par ShizuCorp
Réponse de ShizuCorp sur le sujet Re:Conseil sur un script
J'ai modifié le script, toujours aucunes réponses ? Personnes ne serais m'aidé ? :/
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 8 ans 5 mois #24711
par Philippe
Réponse de Philippe sur le sujet Re:Conseil sur un script
salut ShizuCorporation
a tu regardé la doc de New-ADUser
on n'y trouve pas de parametre comme \"date_arr\" ou \"address_postale\" ou \"type_ordi\" etc
il faut te posé deux questions :
- il y a t'il actuellement ces infos dans le compte utilisateur de l'AD
- et dans quel attribut de l'AD sont mis ces infos
tu peut exécuté la commande suivante sur un utilisateur contenant ces infos pour avoir un exemple des attribut utilisé :
[code:1]get-aduser login_dun_utilisateur -Properties * | fl *
[/code:1]<br><br>Message édité par: 6ratgus, à: 19/12/17 12:45
je suppose que tu debute en PowerShell et aussi en AD !J'ai fais un script pour l'entreprise où je suis en stage et j'aimerais savoir si d'après vous il est fonctionnel ?
a tu regardé la doc de New-ADUser
on n'y trouve pas de parametre comme \"date_arr\" ou \"address_postale\" ou \"type_ordi\" etc
il faut te posé deux questions :
- il y a t'il actuellement ces infos dans le compte utilisateur de l'AD
- et dans quel attribut de l'AD sont mis ces infos
tu peut exécuté la commande suivante sur un utilisateur contenant ces infos pour avoir un exemple des attribut utilisé :
[code:1]get-aduser login_dun_utilisateur -Properties * | fl *
[/code:1]<br><br>Message édité par: 6ratgus, à: 19/12/17 12:45
Connexion ou Créer un compte pour participer à la conversation.
- ShizuCorp
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 49
- Remerciements reçus 0
il y a 8 ans 5 mois #24713
par ShizuCorp
Réponse de ShizuCorp sur le sujet Re:Conseil sur un script
D'accord merci beaucoup! Je pensais qu'on pouvais faire ceci car on lui \"précisais le chemin où prendre les infos\"! Merci encore!
Connexion ou Créer un compte pour participer à la conversation.
- ShizuCorp
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 49
- Remerciements reçus 0
il y a 8 ans 5 mois #24718
par ShizuCorp
Réponse de ShizuCorp sur le sujet Re:Conseil sur un script
Je vais regarder la doc de ce pas!
Merci pour ton aide 6ratgus!
Merci pour ton aide 6ratgus!
Connexion ou Créer un compte pour participer à la conversation.
- xyz
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 69
il y a 8 ans 5 mois #24719
par xyz
Tutoriels PowerShell
Réponse de xyz sur le sujet Re:Conseil sur un script
Salut,
pour :
[code:1]#Force l'éxécution du script
Set-ExecutionPolicy RemoteSigned[/code:1]
Un script ne peut s'octroyer des droits comme ça.
Si une GPO configure ce paramètre cette ligne déclenchera une erreur.
Pour
[code:1]
#Importation du module Active Directory
Import-module ActiveDirectory
Write-Host \"Module Active Directory chargé!\"
#Importation du fichier CSV
$user = Import-CSV \"C:\Users\stagiaireinfo\Desktop\adcsvuser.csv\"
Write-Host \"Fichier importé correctement!\"[/code:1]
Sans gestion d'exception, autour de chacune de ces instructions,tes messages peuvent être contradictoire avec ce qui passe réellement.
Et surtout c'est verbeux, on affiche le plus souvent ce qui ne vas pas, pas ce qui fonctionne
. A moins d'utiliser Write-Verbose en lieu et place de Write-Host.
Et enfin le path de Import-csv ne doit pas être codé en dur mais être un paramètre du script, quitte à lui donner une valeur par défaut si ton organisation a normé l'arborescence des fichiers scripts & fichier des données.<br><br>Message édité par: Laurent Dardenne, à: 19/12/17 10:32
pour :
[code:1]#Force l'éxécution du script
Set-ExecutionPolicy RemoteSigned[/code:1]
Un script ne peut s'octroyer des droits comme ça.
Si une GPO configure ce paramètre cette ligne déclenchera une erreur.
Pour
[code:1]
#Importation du module Active Directory
Import-module ActiveDirectory
Write-Host \"Module Active Directory chargé!\"
#Importation du fichier CSV
$user = Import-CSV \"C:\Users\stagiaireinfo\Desktop\adcsvuser.csv\"
Write-Host \"Fichier importé correctement!\"[/code:1]
Sans gestion d'exception, autour de chacune de ces instructions,tes messages peuvent être contradictoire avec ce qui passe réellement.
Et surtout c'est verbeux, on affiche le plus souvent ce qui ne vas pas, pas ce qui fonctionne
Et enfin le path de Import-csv ne doit pas être codé en dur mais être un paramètre du script, quitte à lui donner une valeur par défaut si ton organisation a normé l'arborescence des fichiers scripts & fichier des données.<br><br>Message édité par: Laurent Dardenne, à: 19/12/17 10:32
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.046 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Conseil sur un script