我正在实现一个 React Web 应用程序,一段时间内不会选择 IDP。我现在需要实现身份验证并使用 Azure B2C,直到最终确定 IDP。
无论最终的 IDP 是什么,它都将支持 OAuth2/OIDC,所以无论具体的 IDP 如何,这不应该起作用吗?
是否有更好的选择将 OIDC 身份验证与 React 应用程序集成?
SPA 最可移植/基于标准/广泛使用的库几乎肯定是 oidc 客户端库: https://github.com/IdentityModel/oidc-client-js
Okta 库也是基于标准的,不是一个糟糕的选择。不幸的是,相当多的主要供应商不支持标准方式的OIDC。
但是,Azure AD 和 SPA 会遇到一些烦恼 - 授权代码流 (PKCE( 和 CORS 问题。
OIDC 客户端可能会为您提供解决问题区域的最佳选择。这是集成库所需的代码类型 - UserManager 类有很多有用的设置,可以让你控制,就像我的这个类一样。