如何用Get-MgUser获取AccountEnabled属性?AzureAD脚本迁移需求
迁移AzureAD用户查询脚本至Microsoft Graph PowerShell
原AzureAD Cmdlet脚本
Get-AzureADUser -Filter "UserPrincipalName eq '$UserPrincipalName'" | select ObjectId, AccountEnabled
对应的Microsoft Graph PowerShell版本
直接替换为以下命令即可,核心逻辑无需大幅修改:
Get-MgUser -Filter "UserPrincipalName eq '$UserPrincipalName'" -Property Id, AccountEnabled | select Id, AccountEnabled
关键说明
- 属性映射:
Get-AzureADUser中的ObjectId对应Get-MgUser的Id属性 -Property参数:显式指定需要返回的属性,减少不必要的数据传输,提升查询效率(若省略该参数,默认返回的属性集也包含AccountEnabled,但显式指定更符合最佳实践)- 过滤规则:OData过滤语法与AzureAD cmdlet完全一致,因此原脚本中的
Filter部分无需修改
极致兼容方案(无需修改原脚本的select部分)
如果希望完全保留原脚本的select ObjectId, AccountEnabled语句,可通过属性别名实现:
Get-MgUser -Filter "UserPrincipalName eq '$UserPrincipalName'" -Property Id, AccountEnabled | Select @{Name='ObjectId'; Expression={$_.Id}}, AccountEnabled
内容的提问来源于stack exchange,提问作者chocodeea
相关产品推荐
相关产品推荐

