Question Homedir & powershell

Plus d'informations
il y a 15 ans 9 mois #6976 par Jireck
Réponse de Jireck sur le sujet Re:Homedir & powershell
Salut Arnaud et Bilbao,

Tout d'abord, merci de vos indices et réponses.

Je veux juste préciser et différencier les deux problèmes/questions.

1) la création des homedir
Cela était juste une demande de renseignement car je lance mon script dans un domaine pour créer des homedir dans un autre domaine. (je suis en test de migration de domaine, je ne veux pas gérer plusieurs domaine).

Je vais restester plus tard quand j'aurais aplani d'autres problèmes.

2) Création de User AD
Là est mon problème. Je crée mes user via le script donné sur ce site.
Mais il faut activé le compte.

Je dois me planté quand je fait :


[code:1]function Create-ADUser ($SamAccountName,$connectAD){

$SamAccountName.Properties.uid
$objUser = $connectAD.Create('user', 'cn='+$SamAccountName.Properties.uid)

$objUser.put('sAMAccountName', '' +$SamAccountName.Properties.uid)
# à spécifier pour bénéficier d'une ouverture de session Kerberisée
$objUser.put('userprincipalName', '' + $SamAccountName.Properties.uid+'@domain.local')

# prénom
$objUser.put('givenName', '' + $SamAccountName.Properties.givenname)

# nom
$objUser.put('sn', '' + $SamAccountName.Properties.sn)

# Description
$objUser.put('description', 'Compte '+ $SamAccountName.Properties.cn)

# Nom affiché : nom qui sera visible dans l'annuaire Exchange
$objUser.put('displayName', ''+$SamAccountName.Properties.cn)

# Script d'ouverture de session
$objUser.put('scriptPath', 'logonScript.ps1')

#$objUser.SetInfo()

# Chemin de la homedirectory
$objUser.put('homeDirectory', '\\FILE-P01\HomeDir\'+$SamAccountName.Properties.uid)
$objUser.SetInfo()
# Lettre de la homedirectory
$objUser.put('homeDrive', 'H:')

$objUser.SetInfo()
###############################################
$objUser.PSBase.InvokeSet(\"AccountDisable\", $false)
$objUser.SetInfo()
####################################################
}[/code:1]

La création des user jusqu'à la ligne de # marche très bien.
Maintenant le passage du compte user en enable non ....

surement une grosse connerie de ma part.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 9 mois #6992 par Arnaud Petitjean
Salut Jireck,

Non ce n'est pas une grosse connerie mais juste une toute petite... :)

Tu as oublié la lettre 'd' à la fin de la propriété car il s'agit de la propriété 'AccountDisabled'.

C'est rageant de se prendre la tête pour une connerie comme ça, mais ça nous arrive tous.

Arnaud

MVP PowerShell et créateur de ce magnifique forum :-)
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 9 mois #6994 par Jireck
Réponse de Jireck sur le sujet Re:Homedir & powershell
Arnaud écrit:

Salut Jireck,

Non ce n'est pas une grosse connerie mais juste une toute petite... :)

Tu as oublié la lettre 'd' à la fin de la propriété car il s'agit de la propriété 'AccountDisabled'.

C'est rageant de se prendre la tête pour une connerie comme ça, mais ça nous arrive tous.

Arnaud


Merci Merci !!!! je me maudit que je suis comme cela ....

ce marche impec

Je vais maintenant forcer les mot de passe
Je vous tiens au courant

Merci encore

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 9 mois #6995 par Jireck
Réponse de Jireck sur le sujet Re:Homedir & powershell
Continuation de mes bêtises et je me frappe 2 erreurs.

J'essaye de rajouter des modif dans UserAccountControl.
J'ai donc naviguer sur le site et est trouvé

[code:1]#Le mot de passe n'expire jamais
blablabla
$objUser.userAccountControl[0] = $objUser.userAccountControl[0] -band (-bnot 65536)
$objUser.SetInfo()
[/code:1]
ici index.php?option=com_joomlaboard&Itemid=76&func=view&id=4941&catid=5

J'essaye ce code est rien est modifier, j'ai tester plusieurs code numérique et rien ...???
Bizarre ...
Pour info, je cherche juste à décocher la case \"l'utilisateur devrait changer de mot de passe\"


Mon deuxième probleme est sur un appel de methode.
Explication: je recupere les password de mes users sous un Openldap. je les traite dans un foreach avec le reste des infos.

les password sont du type {x-clear}MonPassOpenLdap

Je fais donc
[code:1]$PassOpenLdap = $PassOpenLdap.toString.Split(\"\}\"«»)[1][/code:1]
J'ai des erreurs... J'ai donc Spliter mon code
[code:1]$PassOpenLdap = $PassOpenLdap.toString
$PassOpenLdap = $PassOpenLdap.Split(\"\}\"«»)[/code:1]
et j'ai cette erreur
[code:1]Vous ne pouvez pas appeler de méthode sur une expression ayant la valeur Null.
Au niveau de
ec710.ps1 : 152 Caractère : 33
+ $PassOpenLdap = $PassOpenLdap.Split <<<< (\"\}\"«»)
+ CategoryInfo : InvalidOperation: (Split:«»String) [], RuntimeExce
ption
+ FullyQualifiedErrorId : InvokeMethodOnNull
[/code:1]

Une solution .....??

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 9 mois #7008 par Jireck
Réponse de Jireck sur le sujet Re:Homedir & powershell
Salut tout le monde

Je viens de régler mon problème de Password ....

Le problème venait du type .

J'ai réglé le pb en faisant ceci

[code:1]$AgPassword = [string]$AgPassword[/code:1]

Par contre, j'ai toujours le problème de UserAccountControl

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 9 mois #7015 par Jireck
Réponse de Jireck sur le sujet Re:Homedir & powershell
Je comprends pas, Impossible de setter le Password du compte user AD.
Je n'est pas d'erreur.

Voila mon code :
[code:1]$objUser.PSBase.InvokeSet(\"AccountDisabled\", $false)
$objUser.SetInfo()

$objUser.userAccountControl[0] = $objUser.userAccountControl[0] -bor (65600)
$objUser.SetInfo()
#ce que j'utilise normalement
# $objUser.SetPassword(\"$AgPassword[1]\"«»)

#le test 1
# $objUser.SetPassword(\"Password10\"«»)

# le test 2
$objUser.PsBase.Invoke(\"SetPassword\", 'Password10')

$objUser.SetInfo()[/code:1]

Et rien ne marche ...
l'utilisateur est bien créer, le password n'expire jamais.
Par contre le password est a blanc. $AgPassword[1] est bien rempli. le test 1 et deux donne bien sur le même résultat....

Le code est dans cette ordre. j'ai essayé de mettre avant l'activation du compte mais pas mieux...

1 piste ??? SVP

De mon coté, je vais regardé mes Securités AD et tester d'autres trucs

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.045 secondes
Propulsé par Kunena