我想使用 HTTPS 保护我的 Rails 应用程序的登录表单。经过一番艰苦奋斗后,我现在安装了 SSL 证书并正确设置了 Apache/Passenger。
我的应用程序使用 SSL Requirement和 RESTful Authentication结合登录表单。我注意到使用 Firebug,登录凭据仍然以明文形式发送。如何让 Rails form_tag
助手通过 HTTPS 提交表单?我在文档中看不到任何相关信息。
编辑:我做了更多研究并编辑了我的路由文件,以便 session Controller 使用 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 作为生成的 form
元素的 action
,但我仍然可以使用 Firebug 嗅探用户名和密码.这是怎么回事?!
谢谢。
最佳答案
<%= form_for user, {:url => https_path} do %>
...
<% end %>
关于ruby-on-rails - Rails 的 form_tag 助手不使用 HTTPS 提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1388888/