Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Rails с Omniauth и Shibboleth

Автор вопроса: shoenОтветов: 1

Я использую shibboleth в качестве провайдера аутентификации в Omniauth ( https://github.com/toyokazu/omniauth-shibboleth ). После успешного входа в систему и перенаправления на рельсы он не может создать новую сессию, потому что не видит ни Shib-Session-ID, ни Shib-Application-ID. На том же сервере apache другие веб-приложения (java) без проблем используют ту же точку shibboleth.

ruby-on-railsapacheomniauthshibboleth

Ответы

Ответ 1 · рейтинг 2 · Toyokazu Akiyama

Вы пробовали опцию :debug для omniauth-shibboleth? Разве он не показывает Shib-Session-ID или Shib-Application-ID?

Если ваше веб-приложение Java может правильно получать переменные среды от Apache, URI приложения Rails должен отличаться от URI приложения Java. Вы должны добавить URI rails в конфигурацию shibd, чтобы защитить ваше приложение rails. Подробности см. в разделе README "Как аутентифицировать пользователей".

https://github.com/toyokazu/omniauth-shibboleth

Если ваше слово "конечная точка" означает, что URI "/yourapp/shibboleth/callback" точно такой же, как у Rails, идентификатор Shib-Session-ID или Shib-Application-ID должен отображаться с опцией :debug. В данном случае я не смог найти причину. Одна из возможностей: вы используете отдельный сервер приложений rails, такой как дворняга, тонкий или единорог и так далее. В настоящее время мы поддерживаем только модуль Apache, такой как пассажир Phusion, из соображений безопасности. Пожалуйста, также обратитесь к README.

Наилучшие пожелания

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы