首页 > 解决方案 > 具有 Azure 身份验证的自定义 Teams 应用在 Teams 桌面应用中不起作用

问题描述

我们有一些受 Azure 保护的网页。我创建了一个自定义 Teams 应用程序包来显示 Teams 中的一个网页。我们希望该应用可以在浏览器和 Teams 桌面应用中运行。将包上传到 Teams 应用目录并将应用添加到“频道”选项卡后,我可以在浏览器中查看我的网页而没有任何问题。但是,如果我使用 Teams 桌面应用程序,该选项卡只会显示一个空白页。错误提示“login.microsoftonline.com”无法在 iframe 中显示。

我的网页受 Azure 保护,因此用户在访问该页面时将被重定向到 Azure 登录页面 (login.microsoftonline.com) 以登录。在浏览器中,该页面将使用当前用户的会话自动登录,因为用户已登录 Microsoft Teams。但是,在 Teams 桌面应用程序中,该页面无法从桌面应用程序获取会话,它会将用户重定向到不支持 iFrame 的 Azure 登录页面。

我知道自定义 Teams 应用在 iframe 中显示其内容。但是,无法在 iframe 中显示 Azure 登录页面。如果自定义应用的内容页面受 Azure 保护,则 Teams 桌面应用根本无法使用它。

我花了很长时间,但找不到解决方案。有什么建议吗?

提前致谢。

标签: microsoft-teams

解决方案


我遇到了与这篇文章相同的问题。团队选项卡在浏览器上运行没有问题;但是,当打开我们的选项卡时,它会在桌面团队应用程序中显示身份验证错误。错误是:

Error: in auth twana.daniel@email.com InteractionRequiredAuthError: Trace ID: b38d5d36-e582-41af-b354-b4f9ec607e00 Correlation ID: e09d4267-3af7-4f95-98f8-4c01a3f71e9d Timestamp: 2020-11-19 11:12:52Z 

不过,更奇怪的是,Teams 选项卡确实可以在我们的一台 Ubuntu 计算机上运行,​​但不能在 Mac 或 Windows 团队应用程序上运行。那么,这可能是什么原因呢?

我们正在使用 MSAL 库并获取静默令牌,在桌面版本中,当我们尝试获取静默令牌时它会显示错误。


推荐阅读