Отсутствует обязательный параметр: область действия.после обновления gem привратника с 5.1.0 до 5.2.1 - PullRequest
0 голосов
/ 29 сентября 2019

После обновления gem doorkeeper с 5.1.0 до 5.2.1 в приложении Rails (5.2.3), которое обеспечивает авторизацию, логин для приложения, запрашивающего авторизацию, больше не работает.На странице разрешающего приложения указано Missing required parameter: scope., хотя мы не используем области.

В примечаниях по миграции есть несколько строк об областях, но они не говорят со мной.https://github.com/doorkeeper-gem/doorkeeper/wiki/Migration-from-old-versions#database-changes

Конфигурация doorkeeper.rb в приложении авторизации так же проста, как:

Doorkeeper.configure do
  orm :active_record

  resource_owner_authenticator do
    current_admin_user || redirect_to(new_admin_user_session_path(params.permit(:client_id, :redirect_uri, :response_type, :state)))
  end

  admin_authenticator do
    current_admin_user || redirect_to(new_admin_user_session_path)
  end

  access_token_expires_in 24.hours
end

В настоящее время у меня нет потенциальных клиентов для решения проблем.Спасибо за ваши подсказки!

1 Ответ

0 голосов
/ 01 октября 2019

Вам необходимо повторно запустить эту команду, чтобы сгенерировать совместимую миграцию с новой версией.Это добавит ненулевой параметр к атрибуту scopes oauth_access_grants.

 bundle exec rails generate doorkeeper:migration

После того, как вы это сделаете, запустите ваши миграции как обычно с помощью rake.

rake db:migrate
...