2014-09-16 2 views
9

У меня есть приложение Rails с учетными записями администратора, используя Devise для аутентификации. Я создаю второе приложение и хочу выполнить аутентификацию с использованием первого приложения вместо дублирования учетных записей администратора во втором приложении. Поэтому моя идея - превратить первое приложение в поставщика OAuth, чтобы второе приложение могло просто действовать как клиент OAuth, используя что-то вроде OmniAuth. Вы делали это раньше? Есть ли плагин, который добавляет способность к разработке, чтобы иметь возможность выступать в качестве поставщика OAuth? Что мне нужно изменить/добавить, чтобы превратить приложение в поставщика OAuth?Как превратить приложение Rails с помощью Devise в поставщика OAuth?

ответ

10

Использование Doorkeeper gem. Его легко внедрить функциональность поставщика OAuth 2 для вашего приложения. Он также может быть интегрирован с Devise.

Doorkeeper также предоставляет опцию конфигурации для автоматического утверждения и пропуска пароля авторизации. Это полезно при работе с набором доверенных приложений, чтобы вы не путали пользователей, требуя от них «авторизации» доверенного приложения вашей компании.

# in config/initializers/doorkeeper.rb 
Doorkeeper.configure do 
    # ...other config options... 

    skip_authorization do 
    true 
    end 

end 
+0

Прохладный, спасибо. Чем больше я занимаюсь исследованием ... это похоже на то, что мне действительно нужно использовать, это протокол CAS (Central Authentication Service), а не OAuth, поскольку в целом это означает, что центральное приложение для администраторов входит в систему известный набор приложений. Не уверен, если у вас есть мысли по этому поводу ... – Andrew

+0

Я создал новый вопрос для обсуждения: http://stackoverflow.com/questions/25879419/how-to-turn-a-rails-app-with-devise- в-а-SSO-КАН-сервер – Andrew

Смежные вопросы