2

我是一个使用 ruby​​ on rails 的初学者,对于要采用的最佳身份验证方法有点困惑:

1) 安全地将用户在浏览器中输入的登录凭据传递给 Web 服务调用(使用 savon gem 中的 http 基本身份验证)。

2) 使用初始 Web 服务 http 响应提供的会话 ID,以允许用户与 Rails 应用程序和 Web 服务进行持久会话。

3) 在当前用户会话期间发出的每个 Web 服务请求中自动使用在步骤 1 中输入的登录凭据和步骤 2 中的会话 ID(直到用户注销或关闭浏览器)。

我已经阅读了很多关于 cookie、会话和管理身份验证的各种 gem(例如 devise 和 authlogic),但它们都相当混乱,我看不出它们如何适合我的所有身份验证和会话由 Web 服务应用程序管理的特定场景而不是 rails 应用程序。任何人都可以就如何实现上述目标提供任何建议吗?

谢谢

PS Rails 应用程序只能从手机浏览器访问。

4

1 回答 1

1

我推荐阅读使用 Ruby 和 Rails 的面向服务的设计。它涵盖了一些身份验证服务示例,示例代码可以在这里找到。我不确定您的具体情况是什么,但我计划使用类似于 Amazon S3 的签名来处理经过身份验证的请求。我还没有实现它,但我会写一篇关于它的文章。

于 2011-01-14T16:42:34.807 回答