我有一个Web SPA,目前连接到Rails后端,身份验证通过auth0处理。 我们有一台新服务器,其中包含 SPA 需要连接到的一些端点。 考虑到我已经在 SPA 和旧服务器中实现了 auth0,对两台服务器进行身份验证的优雅方法是什么? 有没有办法将经过身份验证的令牌从旧服务器传递回新服务器? 还是在以用户身份登录 SPA 时仅对两台服务器进行身份验证? 用户数据库位于由两个服务器共享的单独数据库中。
如果凭据存储在数据库中,请使用 Auth0 自定义数据库连接针对 SPA 中的 Auth0 进行身份验证。Auth0 提供了所有流行的 SPA 框架/库(angular 1.x、2+、React.js 等)的快速入门示例。针对 Auth0(而不是旧服务器或新服务器)进行身份验证。因此,您会收到 (JWT) ID 令牌和 (JWT) 访问令牌。它是您从SPA发送到每个服务器的访问令牌,用于发出授权请求。应保护服务器(旧服务器和新服务器)以验证 JWT 访问令牌是否有效,并选择性地检查scope
属性是否与请求终结点匹配。这就是所需要的。Auth0 文档涵盖了所有这些,并且还有一些示例演示了如何设置它。