1

我有一个使用Doorkeeper构建的自定义 OAuth2 提供程序(是一个 Rails 应用程序)

并拥有使用 OmniAuth 构建的自定义客户端策略

问题是当我设置它时config/initializers/devise.rb

config.omniauth :mystrategy, "apikey", "secret"

然后我会得到这个错误:

(mystrategy) Callback phase initiated.
(mystrategy) Authentication failure! invalid_credentials: 
OmniAuth::Strategies::OAuth2::CallbackError, OmniAuth::Strategies::OAuth2::CallbackError

如果我将配置更改devise.rb

config.omniauth :mystrategy, "apikey", "secret", {:provider_ignores_state => true} 

然后一切都好...

我无法弄清楚是什么导致了这个问题。似乎问题出在 Rails 的 CSRF 保护上?

4

1 回答 1

0

尝试将omniauth-oauth2更改为版本

gem "omniauth-oauth2", "~> 1.0.2"
于 2013-09-13T13:52:05.147 回答