【发布时间】:2021-06-17 14:11:30
【问题描述】:
我只是想知道如何在我的情况下验证后端 API 中的天蓝色广告访问令牌,即 Django rest 框架。
假设我有一个单页应用程序或一个本机应用程序和一个完全独立的后端 API(django rest 框架)。在我的情况下,如果我的单页应用程序/原生应用程序想要从后端 API 访问某些数据,并且为了访问 API,用户应该登录后端 API。
所以我的方法是利用 MSAL 库从 SPA/本机应用程序获取访问令牌,然后在获取令牌后,将该令牌传递给后端 API,对其进行验证,从图形 API 获取用户信息。如果数据库中存在用户,则登录用户并传递所需的信息。如果用户信息不存在,则创建用户,登录并从 API 传递信息。
所以我的问题是,当我将访问令牌传递给我的后端 API 时,我如何验证用户/SPA/本机应用程序传递给后端 API 的令牌是否是有效令牌?
是否只是我们需要使用用户/SPA/native 传递的 accessToken 对图形 API 端点进行 API 调用,如果它能够使用 accessToken 获取用户数据,那么令牌是有效的,或者如果它失败了,那么accessToken 无效。
这是验证令牌的一般方法还是有更好的方法?请帮忙
【问题讨论】:
-
这可能会有所帮助:docs.microsoft.com/en-us/azure/databricks/dev-tools/api/latest/… 它所做的是解码令牌并针对我的天蓝色 AD 配置验证 aud 和 iss 键值。请参阅this,了解有关可以验证的声明的更多详细信息。
标签: reactjs django django-rest-framework azure-active-directory msal