OpenID 连接/节点/React

Alb*_*sky 3 authentication oauth-2.0 express reactjs openid-connect

有很多如何实现 OpenID Connect 身份验证的示例。在节点 - 代码授予(+客户端密码)。有很多示例如何在 React (SPA) 中实现 OpenID - 使用 PKCE 进行代码授权

即使我知道 PKCE 它相当安全,但是我觉得将身份验证仅放在客户端是很糟糕的。每个 React SPA 都有后端(至少应该托管在某个地方)。

我希望在 Node (Express) 中拥有服务器端来安全地保存客户端密码,并使用 Identity Server 和 React 完成前端的所有繁重工作。

正如我已经说过的,有很多用于身份验证的“带有模板引擎的 Node (Express)”示例。但我想使用 React 作为“模板引擎”。

因此,我正在寻找它的完整且正确的实施。同时我找不到它。有人可以帮我找一个例子吗?

Gar*_*her 5

不过,您需要在 SPA/浏览器中进行一些实际保护,两个常见选项是:

  • 插入OIDC 客户端库来完成繁重的工作,这样您就不必自己编写太多安全代码。该库在接受令牌之前会运行许多严格的安全检查。

  • 使用代理解决方案,使您的 SPA 获得 cookie。对于 SPA 来说,这往往是一种本土解决方案,而不是基于标准的解决方案

选项 1 的我的资源

对于选项 2