You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行New-CsApplicationAccessPolicy创建Teams访问策略返回404错误

问题根因

执行New-CsApplicationAccessPolicy返回404基本由三类原因导致:

  • 使用了已弃用的旧版Skype for Business Online连接器、1.x版本Microsoft Teams PowerShell模块,请求被路由到已经关停的旧服务端点
  • 连接Teams服务时使用的账号没有足够权限,或连接时指定了错误的云环境端点
  • 目标应用对应的服务主体未在当前租户中落地,后端无法识别传入的AppId
修复步骤

1. 安装正确版本的PowerShell模块

先卸载所有不兼容的旧模块,再安装2.0以上版本的官方Microsoft Teams模块:

# 卸载旧版本模块
Uninstall-Module MicrosoftTeams -AllVersions -Force -ErrorAction SilentlyContinue
Uninstall-Module SkypeOnlineConnector -AllVersions -Force -ErrorAction SilentlyContinue

# 安装最新版Teams模块
Install-Module MicrosoftTeams -Force -AllowClobber -Scope CurrentUser

2. 用管理员账号正确连接Teams服务

必须使用分配了Teams管理员或全局管理员角色的账号连接,根据自己的365云环境选择对应连接参数:

# 公有云商用版租户用这个命令
Connect-MicrosoftTeams -TeamsEnvironmentName TeamsCommercial

# 世纪互联运营的中国版365用这个
# Connect-MicrosoftTeams -TeamsEnvironmentName TeamsChina

# 美国政府GCC High版用这个
# Connect-MicrosoftTeams -TeamsEnvironmentName TeamsGCCH

连接完成后执行Get-Command New-CsApplicationAccessPolicy验证命令是否正常加载,如果返回命令的元数据信息说明模块加载正常,返回“找不到命令”则回到第一步重新安装模块。

3. 验证目标应用的服务主体存在

执行以下命令检查对应AppId的服务主体是否在租户中存在:

Get-AzureADServicePrincipal -Filter "AppId eq 'f7b9f9d8-3507-46dc-a596-60f437dbab87'"

如果命令返回空结果,执行以下命令创建服务主体:

New-AzureADServicePrincipal -AppId "f7b9f9d8-3507-46dc-a596-60f437dbab87"

4. 重新创建访问策略

参数传递时将AppId放在数组格式中,避免参数解析错误:

New-CsApplicationAccessPolicy -Identity Test-policy -AppIds @("f7b9f9d8-3507-46dc-a596-60f437dbab87") -Description "BC Teams app access policy for Graph meeting creation"
后续配置注意事项
  • 策略创建后需要15-30分钟完成后端同步,同步完成前调用接口仍可能报错
  • 策略创建后必须分配给对应的目标用户才能生效,分配命令示例:
# 将策略分配给指定用户,替换为实际的用户UPN
Grant-CsApplicationAccessPolicy -PolicyName Test-policy -Identity "targetuser@yourtenant.com"
  • 调用Microsoft Graph创建会议前,需确保对应Azure AD应用已经申请OnlineMeetings.ReadWrite.All等所需的应用权限,并完成管理员同意。

内容的提问来源于stack exchange,提问作者mathieu janio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 04:27:26