Question
Script import utilisateur dans Active Directory
- Xadout
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 4
- Remerciements reçus 0
et accessoirement ne veux pas de ma variable pour les téléphones portables...sur ce point tu n'a pas mis de modification du portable dans ton script !!
Si si je l'ai mis mais il est en commentaire justement car il marche pas. cependant c'est pas le plus important.
dans l'AD tu a des utilisateurs entre autre
ok mais tu peut avoir plusieurs personnes avec le même prénom parfois même le nom
donc quand tu fais ça : Get-ADUser -Filter {givenName -eq $Prenom} tu peut faire le test d'exécuter que cette ligne
si $prenom contient \"Philippe\" par exemple,
get-aduser va te renvoyer la liste de tous les \"Philippe\" !! moi il m'en sort une quinzaine !!
sympas mais c'est pas ce que tu cherche, enfin je crois !!
Bêtement, je m'étais mis en tête que le get-ADuser ne regardait que dans l'objet $LogonAD. Mais effectivent s'il cherche dans toute l'AD, ce n'est pas le but.
Le problème, c'est que je ne souhaite pas utiliser la forme [code:1]# Cherche le logon dans l'AD
$LogonAD = Get-ADUser -filter { userPrincipalName -eq $Logon }
# Si Logon existe, compare chaque variable et met à jour si différent de la valeur dans l'AD
if ($LogonAD -ne $null) {
$EmployeIDAD = $LogonAD.Identity
if ($EmployeIDAD -ne $EmployeID ) {
set-ADUser -Identity $ID -EmployeeID $EmployeID
}}[/code:1]
Mais en faisant comme ca, j'ai un message d'erreur si la valeur Identity est nulle, ce qui est possible.
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
- Messages : 1778
- Remerciements reçus 21
peut tu précisé !Le problème, c'est que je ne souhaite pas utiliser la forme
autre info tu retrouve dans ta variable $logonAD les attributs de l'AD dans la même syntaxeMais en faisant comme ca, j'ai un message d'erreur si la valeur Identity est nulle, ce qui est possible.
[code:1]$EmployeIDAD = $LogonAD.Identity[/code:1]
j'ai peut etre oublier de de le dire dans mon précèdent message
et bien sur 'identity' n'est pas un attribut de l'AD
c'est un paramètre de get-aduser
un extrait de la doc
pour résume pour trouver un utilisateur get-aduser recherche le paramètre identity dans les attributs : DistinguishedName, objectGUID, Sid et sAMAccountNameIdentity
Specifies an Active Directory user object by providing one of the following property values. The identifier in parentheses is the LDAP display name for the attribute.
Distinguished Name
Example: CN=SaraDavis,CN=Europe,CN=Users,DC=corp,DC=contoso,DC=com
GUID (objectGUID)
Example: 599c3d2e-f72d-4d20-8a88-030d99495f20
Security Identifier (objectSid)
Example: S-1-5-21-3165297888-301567370-576410423-1103
SAM account name (sAMAccountName)
Example: saradavis
The cmdlet searches the default naming context or partition to find the object. If two or more objects are found, the cmdlet returns a non-terminating error.
This parameter can also get this object through the pipeline or you can set this parameter to an object instance.
This example shows how to set the parameter to a distinguished name.
-Identity \"CN=SaraDavis,CN=Europe,CN=Users,DC=corp,DC=contoso,DC=com\"
This example shows how to set this parameter to a user object instance named \"userInstance\".
-Identity $userInstance
et si il ne trouve pas renvoie une erreur ( : Impossible de trouver un objet avec l’identité « uuu » sous : « DC=yyy,DC=xxx ».)
pour aller avec ton script il qui suit, tu peut remplacer identity par EmployeID :
[code:1]$EmployeIDAD = $LogonAD.EmployeID
if ($EmployeIDAD -ne $EmployeID[/code:1]
j'espère que je suis assez clair sinon<br><br>Message édité par: 6ratgus, à: 6/11/17 14:41
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Script import utilisateur dans Active Directory