Auteur de questions
Powershell V5 - Get-aduser samaccountname ne fonctionne plus

Question
-
Bonjour,
Depuis mon passage à Windows 10, j'ai la commandlet powershell "get-aduser abc123" (abc123 étant mon login windows) qui ne fonctionne plus et me donne cette erreur :
Get-ADUser : Impossible de lier le paramètre «Identity». Impossible de convertir la valeur en type «Microsoft.ActiveDirectory.Management.ADUser
». Seuls les types principaux sont pris en charge dans ce mode de langage.
Au caractère Ligne:1 : 12
+ get-aduser abc123
+ ~~~~~~~
+ CategoryInfo : InvalidArgument : (:) [Get-ADUser], ParameterBindingException
+ FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.ActiveDirectory.Management.Commands.GetADUserSur powershell 4, je n'ai pas ce problème.
Je suis en version Windows 10
Name Value
---- -----
PSVersion 5.1.16299.1146
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.16299.1146
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1Le problème qui va se poser est que j'ai un serveur de script qui utilise beaucoup cette fonction et si cette fonction ne marche plus, je vais devoir changer tous mes scripts.
La commande "get-aduser -filter {samaccountname -eq "abc123"} fonctionne elle très bien.
Merci pour votre aide,
Jonathan GAY- Déplacé Nedeltcho PopovMicrosoft contingent staff mercredi 14 août 2019 06:24 mauvais forum
Toutes les réponses
-
-
Bonjour,
J'ai le même problème sur mon poste W10 : avec ou sans le -Identity, on dirait qu'une valeur <samAccountName> n'est plus reconnue, bien que le technet indique qu'on peut utiliser au choix :
- A distinguished name
- A GUID (objectGUID)
- A security identifier (objectSid)
- A SAM account name (sAMAccountName)
Ca semble lié au LanguageMode du PC ? Dans ISE, en tappant
$ExecutionContext.SessionState
Je vois que je suis en
LanguageMode : ConstrainedLanguage
Ce qui semblerait être la cause du problème. Je vais poursuivre mes tests pour voir si changer ce langage mode peut résoudre le problème.
Bonne journée,
- Modifié MarionDi mercredi 14 août 2019 14:21
-
Bonjour,
J'ai le même problème sur mon poste W10 : avec ou sans le -Identity, on dirait qu'une valeur <samAccountName> n'est plus reconnue, bien que le technet indique qu'on peut utiliser au choix :
- A distinguished name
- A GUID (objectGUID)
- A security identifier (objectSid)
- A SAM account name (sAMAccountName)
Ca semble lié au LanguageMode du PC ? Dans ISE, en tappant
$ExecutionContext.SessionState
Je vois que je suis en
LanguageMode : ConstrainedLanguage
Ce qui semblerait être la cause du problème. Je vais poursuivre mes tests pour voir si changer ce langage mode peut résoudre le problème.
Bonne journée,
Vous pourrez changer le language mode en full et tester:
$ExecutionContext.SessionState.LanguageMode = "FullLanguage"
vote if you think useful
- Modifié F.ABASSI mercredi 14 août 2019 14:50
-
-
Bonjour,
Je suis sous windows 10 et la commande get-aduser toto me renvoie bien un résultat.
PS C:\> $psversiontable
Name Value
---- -----
PSVersion 5.1.17763.592
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.17763.592
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1Merci de marquer comme reponses les interventions qui vous ont ete utile.
-
@MarionDi
tu as bien identifié la source de ton prbolème. Plus d'infos ici https://devblogs.microsoft.com/powershell/powershell-constrained-language-mode/
et on trouve marqué textuellement
PowerShell module script files must explicitly export functions by name without the use of wildcard characters.
This is to prevent inadvertently exposing powerful helper function not meant to be used publicly.
Ce mode de fonctionnement peut etre changé facilement. Plus d'info avec help about_language_mode
ou comme l'a indiqué Fethy
$ExecutionContext.SessionState.LanguageMode = "FullLanguage"
Oliv