我想使用HTTPS保护我的Rails应用程序的登录表单。经过一番艰苦的斗争之后,我现在已经安装了SSL证书并正确设置了Apache / Passenger。
我的应用程序结合使用SSL Requirement和RESTful Authentication登录表单。我注意到使用Firebug仍然以明文形式发送登录凭据。如何让Rails form_tag
帮助者通过HTTPS提交表单?我在文档中看不到任何相关内容。
编辑:我做了一些研究并编辑了我的路线文件,以便会话控制器使用HTTPS:
map.resource :session, :controller => 'session',
:only => [:new, :create, :destroy],
:requirements => { :protocol => 'https' }
我还更改了登录表单以使用session_url
而不是session_path
:
<% form_tag session_url do %>
.
.
.
<% end %>
- 这正确地使用完整的https:// URL作为生成的action
元素的form
,但我仍然可以使用Firebug来嗅探用户名和密码。发生什么事了?!
感谢。
答案 0 :(得分:3)
<%= form_for user, {:url => https_path} do %>
...
<% end %>
答案 1 :(得分:2)
由于Firebug是Firefox内部的扩展,它可能会在加密之前看到请求数据。如果你想正确测试,你应该使用Firefox以外的工具。