ruby-on-rails - Devise 中的摘要式身份验证

标签 ruby-on-rails ruby-on-rails-3 authentication devise

我正在使用 Rails 3 和 Devise 进行身份验证。我有一个合适的网站工作设备和 API(json 处理程序)的基本身份验证。如何启用摘要身份验证?

他们的维基告诉我添加

def http_authenticate
  authenticate_or_request_with_http_digest do |user_name, password|
    user_name == "foo" && password == "bar"
  end
  warden.custom_failure! if performed?
end

我应该将其添加到哪里以及如何使用户名/密码匹配?

最佳答案

该 wiki 条目确实假设了很多。

我最好的猜测是您需要将其添加到适当的 Controller (或者应用程序 Controller ,如果您想要它用于所有内容)。

然后添加一个 :before_filter :http_authenticate! 您还可以尝试追踪该 wiki 页面的编写者并询问他们。

注意。这依赖于 Warden 来执行您的身份验证 - Devise 仅处理帐户。

这个东西没有被很好地记录的原因之一是大多数人使用复杂的身份验证管理系统(例如 OmniAuth),以及其他用于权限/授权的东西,例如。如果您喜欢更轻量级的东西,则可以使用 DeclarativeAuthorization 或 CanCan。

HTTPBasic(我认为是摘要)往往不能很好地与这些配合。

关于ruby-on-rails - Devise 中的摘要式身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5205977/

相关文章:

ruby-on-rails-3 - 导轨 3 + Rspec 2 : Testing content_for

java - Facebook java API 中 client.auth_getSession() 的无效参数异常

azure - 使用 Azure AD 的 API 后端 (.NET Core) 中的身份验证基础知识

ruby-on-rails - Paperclip 不支持 .doc 文件

ruby-on-rails - Capistrano 部署、 Assets 管道、未找到 ruby​​-debug

ruby-on-rails - Rails 应用程序助手不支持中文字符

PHP 基本认证 file_get_contents()

ruby-on-rails - Rails - 显示两个哈希之间的差异

javascript - Ruby on Rails : Make Float Value to be limited to 5 decimal places

ruby-on-rails - 通用名称 gem 公约