【发布时间】:2018-12-03 23:02:11
【问题描述】:
我们有一个单一的 Rails 3 (Ruby 1.9) 服务器,它为我们完成一切,包括设计会话身份验证。
我们最近决定引入一个新的 Rails 5 服务器(从头开始构建),它将作为 API 服务器并慢慢取代旧服务器中的现有功能。
我们的问题是会话身份验证发生在旧的 Rails 服务器上,我们希望在新的 Rails 5 服务器中包含会话身份验证。
是否有人对如何使用新的 Rails 服务器对具有会话信息的现有 Rails 服务器进行会话身份验证有经验或建议?
不用说,我主要关注前端开发 - 服务器端身份验证不是我的强项。
【问题讨论】:
-
我假设它们在同一个数据库上工作,您的 rails 5 应用程序是否具有相同的设计逻辑设置?您的两个选择是在您的 rails 5 应用程序中复制登录逻辑,或者从那里向您的 rails 3 提交请求,我想这会破坏目的。
-
我们担心更改身份验证会为本次冲刺带来太多风险。我们可以在 Rails5 的 application_controller 中使用一个方法来查询 Rails3 并接收 current_user 和相关会话数据作为响应吗?
-
你可以,设置一个返回当前用户 ID 的新端点非常简单(如果你担心安全性,可能还有一个关联的令牌)。不过,这仍然会在您的旧服务器上进行实际身份验证,他们需要登录才能返回该数据
-
您真的想在 API 服务器上使用基于会话的身份验证吗?
-
@max 我的其他选择是什么?我希望能够在 API 服务器中使用通用方法来呈现与当前登录用户严格关联的行的结果
标签: ruby-on-rails ruby devise