0

我浏览并查看了一堆屏幕截图(http://railscasts.com/episodes/270-authentication-in-rails-3-1)和教程(http://ruby.railstutorial.org/chapters/ model-and-viewing-users-two?version=2.3#sec:secure_passwords) 但我似乎无法找到或应用我正在学习的内容来创建受保护的单视图密码。

截至目前,我正在生成一个随机密码并将其显示给用户以返回并查看他们上传的文件(使用 SecureRandom.hex 生成)。但是,我知道当我将 http_basic 仅限制为控制器中的显示视图和方法时,使用它似乎不起作用:http_basic_authenticate_with :password => :passcode, :only => :show

我知道那行代码不起作用,因为 :passcode 没有引用创建的单个文件密码。

另外,我知道 http_basic_authenticate_with 不是安全密码应该采用的方式,那么你将如何使用 has_secure_password 等来解决这个问题?

4

1 回答 1

0

您可以尝试将 封装http_basic_authenticate_with :password => :passcode在控制器中的方法中,然后调用before_filter来调用该方法。
像这样的东西:

before_filter :restrict, :only => :show

def show
end

def restrict
  http_basic_authenticate_with :password => :passcode
end
于 2012-07-11T13:56:41.487 回答