【发布时间】:2021-03-04 20:20:17
【问题描述】:
我绝不是 MSAL/JWT/Graph 身份验证方面的专家,但我希望有人可以更清楚地向我解释这个问题,或者帮助我了解是否有解决方法或更好的方法。
基本上,在某些情况下,我可能最终会使用 Microsoft Graph JWT 令牌。我可以轻松想到的两个示例是使用 Microsoft Graph Toolkit 或在 Microsoft Teams 中使用 Tabs SSO。在这两种情况下,我都可以从我已经拥有的 JWT 令牌(通过 Graph Toolkit 或通过 Teams SSO)获取用户的相关身份信息——他们的 Azure AD 对象 ID 和租户 ID。但是,我不能将相同的令牌用于我自己的后端 API,因为根据我的研究,我无法针对该 JWT 令牌执行基本令牌验证。例如,我希望能够针对该用户和租户 ID 组合存储信息。
我知道我可以进行自己的身份验证(例如 MSAL.js),我什至可以通过扩展其用途来使用 SAME Azure AD 应用程序,但简单地使用我有权访问的令牌会容易得多已经,如果只有一种方法可以验证它。例如,在 Teams 中,SSO 用户体验得到了很好的集成,但我需要让用户通过另一个登录,甚至可能是相同的 Azure AD 应用程序。 [更新:所以从技术上讲,它不是另一个“登录”——用户已经登录,因此是“SSO”,但他们需要再次同意,在这种情况下,他们同意的是同一个应用到刚才]。
那么,我的问题是,是否有任何方法可以安全地验证现有令牌?
【问题讨论】:
-
嗨@Hilton,我看到这个问题仍然悬而未决,没有任何解决方案。让我带着这个 MS 内部团队,带着解决方案回来。
-
谢谢,非常感谢
标签: azure-active-directory microsoft-graph-api microsoft-teams azure-ad-graph-api microsoft-graph-toolkit