使用New-AzADUser时提示MobilePhone参数不存在的问题求助
New-AzADUser报错“找不到MobilePhone参数”的原因及解决方法
原因
- 你查阅的是Az PowerShell 9.1.0版本的文档,但Azure门户Cloud Shell当前搭载的Az模块版本低于9.1.0,
MobilePhone参数是在该版本及之后才被添加到New-AzADUsercmdlet中的。 - 若环境中同时存在旧版AzureAD模块,可能出现参数识别冲突,但你使用的是
New-AzADUser(属于Az.Resources模块),因此核心原因还是模块版本不匹配。
解决方法
1. 升级Az模块到指定版本或最新版
在Azure门户的Cloud Shell中执行以下命令升级模块:
# 升级到9.1.0版本 Install-Module -Name Az -RequiredVersion 9.1.0 -Force -AllowClobber # 或直接升级到最新稳定版 Update-Module -Name Az -Force -AllowClobber
升级完成后,重启Cloud Shell再执行创建用户的命令即可。
2. 模块无法升级时的替代方案:调用Microsoft Graph API
如果无法升级模块,可通过调用Graph API实现用户创建,示例代码如下:
# 构造请求体 $userParams = @{ displayName = "DisplayName" mailNickname = "email@gmail.com" userPrincipalName = "UserPrincipalName" mail = "mail" mobilePhone = "+31000000" department = "Department" accountEnabled = $true passwordProfile = @{ forceChangePasswordNextSignIn = $true password = "YourSecureTempPassword123!" } } | ConvertTo-Json # 调用Graph API创建用户 Invoke-AzRestMethod -Method POST -Uri "https://graph.microsoft.com/v1.0/users" -Body $userParams
注意:执行此操作需要账号拥有User.ReadWrite.All或相应的用户创建权限,且密码需符合Azure AD的密码复杂度要求。
内容的提问来源于stack exchange,提问作者FerdiS
相关产品推荐
相关产品推荐

