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

Microsoft Teams扩展隐身窗口SSO认证错误排查求助

Microsoft Teams扩展SSO认证在Chrome隐身窗口报错问题

我正在使用React.js和C#开发Microsoft Teams扩展,该扩展采用SSO认证机制。在Google Chrome隐身窗口测试时,SSO令牌获取过程持续出现错误,但通过admin.teams.microsoft.com访问应用时无此问题。

复现步骤

  • 打开Google Chrome隐身窗口,访问https://dev.teams.microsoft.com/
  • 登录Microsoft Teams开发者平台UI
  • 使用提供的压缩包导入扩展
  • 尝试启动应用,在开发者控制台查看SSO相关错误

错误信息

  • POST https://login.microsoftonline.com 返回400 Bad Request
  • POST https://cc-frontline-backend.azurewebsites.net 返回401 Unauthorized
  • Error in getAccessToken: "Exchange SSO ID Token failed with HTTP status 401"
  • Error in useEffect: "Failed to retrieve access token: invalid_token"
  • 错误截图显示Microsoft Teams响应错误

代码片段

function initializeTeamsSdk(): Promise<void> {
    return new Promise((resolve, reject) => {
        microsoftTeams.initialize(() => {
            console.log("Teams SDK initialized successfully.");
            resolve();
        });
    });
}

async function AuthenticateWithSSO(): Promise<IAccessTokenRequestBody> {
    await initializeTeamsSdk(); 
    return new Promise((resolve, reject) => {
        microsoftTeams.authentication.getAuthToken({
            successCallback: (token: string) => {
                try{
                    const decoded = jwtDecode(token);
                    const requestBody = {
                        tenantId: decoded.tid,
                        ssoToken: token,
                        clientId: decoded.aud,
                    };

                    SetClientId(requestBody.clientId);
                    SetSsoToken(requestBody.ssoToken);
                    SetTenantId(requestBody.tenantId);

                    microsoftTeams.appInitialization.notifySuccess();
                    resolve(requestBody);
                }catch(error){
                    reject("Token decoding failed");
                }
            },
            failureCallback: (error: string) => {
                microsoftTeams.appInitialization.notifyFailure({
                    reason: microsoftTeams.appInitialization.FailedReason.AuthFailed,
                    message: error,
                });
                    reject(error);
            },
            resources: [process.env.SSO_TAB_APP_URI as string],
        });
    });
}

技术细节

  • "@microsoft/teams-js": "^1.11.0"
  • "@microsoft/teamsfx": "^0.5.0"

已尝试解决方案

  • 验证并更新环境变量
  • 检查端点配置正确性
  • 添加重试机制应对可能的网络错误

问题咨询

是否有人遇到过类似的Microsoft Teams扩展SSO认证问题?这些问题是否与配置、Teams平台更新或SDK版本有关?如何解决这些认证错误?

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 18:06:12