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