对接Azure功能应用程序的AAD B2C身份验证



我们目前正在成功运行Node.js Azure功能应用程序,该应用程序部署在Azure的应用程序服务中,AAD B2C身份验证作为基于React的单页应用程序的后端。SPA中的用户身份验证是通过Azure AAD B2C完成的,其中用户获得JWT令牌,该令牌用作针对后端API的所有请求的承载令牌。这很管用。

由于不同的原因,我们现在需要将我们的函数应用程序码头化,并将其移动到Kubernetes集群中。这使我们无法在应用程序服务中使用功能应用程序的AAD B2C集成来保护API,因此我们需要不同的方法来验证请求的承载令牌

据我们所知,有两种可能的选择:

  1. passport.js
  2. MSAL

passport.js似乎适用于所有基于Express的应用程序,因此不适合我们,因为我们的Function应用程序不是基于Express的。我们还查看了msal节点和使用它的各种示例,但很难准确理解我们的令牌验证在哪里以及如何适用,以及哪些示例(如果有的话(适合我们的用例。

我们在msal节点上的方向是否正确?如果是,我们如何通过AAD B2C验证Bearer令牌来完成保护容器化node.js Azure功能应用程序的任务?

我们找到了一个可行的解决方案。事实证明,我们的想法太复杂了;正常的";JWT验证正是我们需要做的。

这篇StackOverflow文章准确地描述了我们试图实现的目标。

最新更新