执行New-CsApplicationAccessPolicy遇404错误,全局管理员权限仍无法解决
问题
我需要通过PHP单页应用调用Graph的Create onlineMeeting API动态创建Teams会议,根据官方要求,使用应用权限调用该API时,租户管理员需创建应用访问策略并授予用户,授权指定应用代表用户创建会议。
我已安装Microsoft Teams PowerShell模块并通过Connect-MicrosoftTeam成功登录,但执行New-CsApplicationAccessPolicy等相关cmdlet时均报错:
PS C:\WINDOWS\system32> New-CsApplicationAccessPolicy cmdlet New-CsApplicationAccessPolicy at command pipeline position 1 Supply values for the following parameters: Identity: New-Policy New-CsApplicationAccessPolicy : The remote server returned an error: (404) Not Found. At line:1 char:1 + New-CsApplicationAccessPolicy + CategoryInfo : NotSpecified: (:) [New-CsApplicationAccessPolicy], WebException + FullyQualifiedErrorId : System.Net.WebException,Microsoft.Teams.ConfigApi.Cmdlets.NewCsApplicationAccessPolicy
我是租户内唯一的全局管理员,尝试列出ApplicationAccessPolicy时也出现相同404错误,所有相关cmdlet均无法运行。
解决方案
检查并更新Teams PowerShell模块版本:旧版本的Microsoft Teams模块可能不支持
ApplicationAccessPolicy系列cmdlet。运行以下命令查看当前版本:Get-Module -Name MicrosoftTeams若版本低于4.0,执行更新命令后重启PowerShell:
Update-Module -Name MicrosoftTeams确认连接的Teams环境:如果你的租户属于政府版、中国版等特殊环境,连接时需指定对应环境参数,避免默认环境不匹配导致404:
# 商业版租户示例 Connect-MicrosoftTeams -Environment Commercial # 中国版租户替换为China,美国政府版替换为USGov验证租户许可:
ApplicationAccessPolicy相关操作仅支持Microsoft Teams商业版、企业版或教育版,免费版Teams不提供该功能,需确认租户已订阅对应许可。确认登录账号权限与状态:确保登录的是租户全局管理员账号(非来宾账号),且登录过程中MFA验证正常,无临时权限限制。
改用Graph PowerShell模块替代:如果Teams模块问题无法解决,可使用Graph PowerShell模块完成策略创建:
- 安装模块:
Install-Module Microsoft.Graph.Teams - 连接Graph并请求所需权限:
Connect-MgGraph -Scopes "AppPolicy.ReadWrite.Chat","AppPolicy.ReadWrite.Meeting" - 创建应用访问策略:
New-MgTeamworkApplicationAccessPolicy -DisplayName "New-Policy" -Description "Policy for app to create online meetings" -AppIds @("你的应用ID") -AllowedUserIds @("授权的用户ID")
- 安装模块:
内容的提问来源于stack exchange,提问作者Ajay

