如何在带有node.js实例的rails / rack应用程序上共享身份验证?

时间:2010-12-16 01:46:02

标签: ruby-on-rails session node.js rack

我一直在试图弄清楚如何将node.js应用程序集成到rails应用程序中并让它们共享会话。到目前为止,我只能通过机架中间件挖掘sinatra和ruby之间的共享会话。有可能做到这一点吗?

我想到了一个涉及ror实现休息服务的解决方法,该服务“挖出”了node.js可以用来创建自己的会话的guid。但是,此解决方案需要将模型验证广告存储在两个单独的应用中。

只是想知道是否有办法整合它们。

虽然使用像geddy或express这样基于js的web框架很酷,但我有很多现有的rails代码和第三方库,比如活跃的商家,我必须重新发明。

2 个答案:

答案 0 :(得分:2)

如何使用memcached之类的东西来共享验证机制,例如在rails中设置会话,并且每个消息都向nodeJs服务器发出一个令牌,如果令牌存在,nodeJs检查memcached并根据该值授予或拒绝。您当然会在rails app

中添加memcached记录

答案 1 :(得分:1)

与在openid,facebook connect,twitter登录等两个不同域之间共享身份验证不同。

    来自rails网站的
  • 执行openid,例如重定向到node.js,并在网址内加密验证信息,反之亦然?

  • 我想知道是否无法使用connect-auth中的Custom OAuth Provider Strategy而反之亦然,因为connect-auth是“用于连接的身份验证中间件”。我还没有想出完整的细节,但这可能是一个选择吗?