1

我在我的 ruby​​ on rails 应用程序上使用门卫来实现 OAuth 功能。我也在使用设计进行用户安全管理。

这是我当前的 doorkeeper.rb 文件:

Doorkeeper.configure do
  orm :active_record

  resource_owner_authenticator do
    user_signed_in? || redirect_to(new_user_session_url)
  end

  admin_authenticator do
    user_signed_in? || redirect_to(new_user_session_url)
  end

  enable_application_owner :confirmation => true

  # authorization_code_expires_in 10.minutes

  # access_token_expires_in 2.hours

  # use_refresh_token

  # default_scopes  :public
  # optional_scopes :write, :update

  # client_credentials :from_basic, :from_params

  # access_token_methods :from_bearer_authorization, :from_access_token_param, :from_bearer_param

  # test_redirect_uri 'urn:ietf:wg:oauth:2.0:oob'

  # skip_authorization do |resource_owner, client|
  #   client.superapp? or resource_owner.admin?
  # end

  # realm "Doorkeeper"
end

当我访问 /oauth/applications 时,我收到一个错误页面,上面写着“未初始化的常量管理员”和“config/initializers/doorkeeper.rb:18:in `block (2 levels) in '”。

我究竟做错了什么?

4

1 回答 1

0

我已经解决了这个问题。问题在于rails服务器缓存了doorkeeper.rb初始化文件,我需要在编辑该文件后重新启动服务器。

于 2014-03-14T05:00:39.707 回答