简体   繁体   中英

Powershell - Azure AD : User creation - PasswordProfile error message

I am doing some tests to manage Azure AD users and groups with Powershell. Unfortunately, i have an issue when i try to create an user. Here my code :

#Specifies the user's password profile. $PasswordProfile=New-Object -TypeName Microsoft.Open.AzureAD.Model.PasswordProfile $PasswordProfile.Password = "xxxx"

#Create a AzureAD user account PS C:\Windows\system32> New-AzureADUser -DisplayName "Power SHELL" -GivenName "Power" -SurName "SHELL" -UserPrincipalName power.shell@xxxx.xx -UsageLocation FR -MailNickName Power Shell -PasswordProfile $PasswordProfile -AccountEnabled $true

When I validate the PasswordProfile, I have this error message :

New-AzureADUser: Failed to bind parameter 'PasswordProfile'. Cannot convert value '$PasswordProfile' of type 'System.String to type “Microsoft.Open.AzureAD.Model.PasswordProfile”.

I look in a lot of forum but i can't find any solution to make it works.

Thanks for your help.

Geoffrey

I could create the user successfully with the commands you have provided and as per microsoftDocs :

在此处输入图像描述

Result: 在此处输入图像描述

I could reproduce the issue with error:

 Cannot bind parameter 'PasswordProfile'. 
" value of type "System.String" to type "Microsoft.Open.AzureAD.Model.PasswordProfile".

when i actually placed quotes around $PasswordProfile like below

New-AzureADUser -DisplayName "xxx" -GivenName "xx" -SurName "xx" -UserPrincipalName xxxx.onmicrosoft.com -UsageLocation US -MailNickName navy -PasswordProfile "$PasswordProfile" -AccountEnabled $true 

在此处输入图像描述

So please try by placing $PasswordProfile in quotes in your case to resolve the issue.

-PasswordProfile "$PasswordProfile"

similar case here : Cannot convert 'System.Object[]' to the type .. | techcommunity.microsoft.com

Please make sure password is valid and check if string as input type for Parameter somehting like here

or

Try this way:

    $PasswordProfile = New-Object -TypeName     
      Microsoft.Open.AzureAD.Model.PasswordProfile
   
    $PasswordProfile.Password = "Ixxxxxxxk"
   
    $params = @{
    AccountEnabled = $true
    DisplayName = "xxxn"
    PasswordProfile = $PasswordProfile
    UserPrincipalName = "xxx@xxxxxx.onmicrosoft.com"
    MailNickName = "xxxxx"
    }
   
    New-AzureADUser @params 

References: set-azureaduserlicense-cannot-bind-parameter-assignedlicenses

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM