我正在尝试使用 Passport.js 和带有 OpenID Connect 策略的 Azure Active Directory B2C 为我的 Node.js Web 应用程序实现面向客户的身份验证。
我已按照官方 GitHub 页面上的 README 说明,并研究了官方示例应用程序的源代码,但它们似乎不完整和/或过时,正如在线各种线程所同意的那样。
在拼凑来自网络的各种提示后,我跨越了许多桥梁,但陷入僵局并出现以下错误:
cannot get AAD Federation metadata from endpoint you specified
.
AAD 身份验证需要大量配置,所以我会注意一些重要的值:
policyName
: 这就是b2c_1_signin
,就像我在 Azure 门户中配置的一样。identityMetadata
:我正在使用特定于租户的 v2.0 端点。我添加?p=b2c_1_signin
了注入策略名称。responseType
:id_token
redirectUrl
:这是我在 Azure 中配置的本地主机和端口。allowHttpForRedirectUrl
设置为true
。(这适用于非生产环境。)isB2C
:true