我在Azure AD中注册了一个应用程序。
如果我在Web API级别和客户端(SPA应用程序)级别使用相同的Application ID
,为什么要同时使用两个Azure AD身份验证库
(对于Azure AD v1,{ADAL JS,对于Azure AD v2,MSAL.js)
在调用Web API时使用ID token
作为承载令牌,而不是请求和使用access token
?这不违反规范吗?
答案 0 :(得分:1)
根据官方文档,这可能是您的情况。
“ Azure AD中的OAuth 2.0隐式流旨在当请求为其请求令牌的资源与客户端应用程序相同时返回ID令牌。换句话说,当JS客户端使用ADAL JS进行请求时一个自己的后端Web API的令牌,该令牌已与客户端注册了相同的App ID,该ID令牌将被库返回并缓存。请注意,在这种情况下,资源应设置为客户端的App ID(App ID URI无效)。然后,该ID令牌可用作调用应用程序的后端API的承载令牌。“
您可以在这里找到更多有关此的信息!
https://github.com/AzureAD/azure-activedirectory-library-for-js/wiki/Acquire-tokens