Я пытаюсь реализовать аутентификацию для веб-портала, который я разрабатываю Ruby on Rails (т. Е. Я хотел бы защитить определенные страницы для доступа администратора). Он защищен Shibboleth, и у меня есть база данных для пользователей (для информации, которую я не получаю от Shibboleth). Сервер работает под управлением Phusion пассажир на apache2.4Использование атрибутов Shibboleth в качестве переменных среды Ruby (Phusion Passenger)
У меня есть два вопроса:
путь я планирую осуществить это с помощью if-другого условия. Я возьму атрибут от Shibboleth, соответствующий ему, с помощью ключа моей пользовательской базы данных, чтобы идентифицировать пользователей. Если это админ, я покажу контент, специфичный для администраторов. Есть ли более эффективная реализация?
- Как установить переменные среды на рубине, переданные Shibboleth? И как я могу использовать их на странице HTML для реализации if-else выше?
Позвольте мне знать, если требуется дополнительная информация.
Просьба пояснить, что вы подразумеваете под «Как установить переменные среды на рубине, переданные Shibboleth?». – rlandster
@rlandster из того, что я собираю, вы можете установить атрибуты, которые ваша система получает от shibboleth в атрибуте map.xml. Я хочу надежно использовать эти атрибуты в моем приложении RoR (желательно не как HttpHeader). Как мне это сделать? – newtojs