0

我有一个 SPA 应用程序和一个相关的 API,它可以从中获取数据。(Aurelia 和 Nodejs)

我最近制定了 SPA 上的身份验证,以便它使用 MSAL 针对我们公司的 AAD 对用户进行身份验证,并能够检索应用程序随后也可以用来访问 MS Graph 的令牌。

但是,我还希望我的 API 能够针对 AAD 进行身份验证。我想要的是 API 能够接受来自 SPA 客户端的令牌。

虽然我能够将令牌从客户端发送到 API(Authorization: 'Bearer'...) 我不确定在服务器端如何处理它,然后向身份提供者验证令牌是否有效。

在大多数情况下,我不希望 API 有 UI 问题(即身份验证/登录屏幕)。它应该简单地拒绝任何没有携带正确令牌的请求。

我希望最终将客户端和服务器应用程序都作为应用程序服务托管在 Azure 上,但目前它们是在内部托管的。我认为有一种方法可以确保解决方案无论应用程序托管在哪里都能正常工作。

谢谢你的帮助!

4

1 回答 1

0

我不确定我是否理解问题的标题和正文之间的关系:我会回答正文:) 在https://azure.microsoft.com/en-us/resources/samples/active-directory-b2c- javascript-msal-singlepageapp/你可以在 Node JS 中看到 Web API 令牌验证的示例。只需调整服务端逻辑以指向您正在使用的 Azure AD 租户。鉴于要验证的参数都是关于逻辑标识符的,因此无论 API 托管在何处,上述内容都将起作用。

于 2017-07-21T17:29:43.873 回答