Mac PowerShell运行Set-AzureADGroup提示命令未识别问题问询
问题解决方法
报错原因
- 直接执行
Import-Module AzureAD报错缺失System.Windows.Forms:AzureAD是仅支持Windows系统的PowerShell模块,基于.NET Framework开发,依赖大量Windows专属系统组件。你在Mac上使用的PowerShell 7基于跨平台.NET Core运行,没有内置这些Windows专属依赖,因此无法加载该模块。 - 加
-UseWindowsPowerShell参数导入后仍找不到Set-AzureADGroup命令:该参数仅在Windows系统的PowerShell 7中可用,需要依赖Windows内置的Windows PowerShell 5.1运行时才能工作,Mac环境没有该运行时,所以导入操作实际没有生效,自然找不到对应的命令。
解决方案
优先使用微软官方推出的跨平台替代模块 Microsoft Graph PowerShell,该模块是官方指定的AzureAD模块替代品,原生支持Mac、Linux、Windows全平台,完全覆盖AzureAD模块的所有功能,操作步骤如下:
- 安装Microsoft Graph模块:
Install-Module Microsoft.Graph -Scope CurrentUser
- 连接Microsoft Graph,申请组修改所需的权限:
Connect-MgGraph -Scopes "Group.ReadWrite.All"
- 原
Set-AzureADGroup命令可以直接替换为等效的Update-MgGroup命令,示例如下:
# 原有AzureAD命令写法 Set-AzureADGroup -ObjectId "你的组ID" -DisplayName "新的组显示名" # 等效的Microsoft Graph命令写法 Update-MgGroup -GroupId "你的组ID" -DisplayName "新的组显示名"
如果确实必须使用原生AzureAD模块,只能在Mac上安装Windows虚拟机,在虚拟机的Windows PowerShell 5.1环境下安装使用该模块。
内容的提问来源于stack exchange,提问作者derek
相关产品推荐
相关产品推荐

