Вы знаете, можно ли использовать Nginx с Shibboleth?
Только когда FastCGI поддерживает режим «авторизатора». Документация Shibboleth 2 описывает Приложение FastCGI SP но объясняет, что он не работает с Nginx, потому что в нем отсутствует режим «авторизатора», необходимый для фильтра.
Тема Nginx показывает, что многим нужен режим «авторизатора», но его слишком сложно реализовать. когда люди пытаются сдаться.
Постер Alex on этот поток Rails разделяет код Ruby для аутентификации Shibboleth, но, похоже, использовал Apache. Другие плакаты, использующие Nginx, по-прежнему не могли заставить его работать.
Да, это возможно. Установите и настройте nginx-http-shibboleth
модуль для nginx, который дает возможность nginx понимать части спецификации авторизатора FastCGI, которые nginx может поддерживать; достаточно для успешной аутентификации Shibboleth. Для вашей установки потребуется сборка FastCGI поставщика услуг Shibboleth (SP) и соответствующая конфигурация nginx для связи с shibauthorizer
и shibresponder
Приложения FastCGI.
Все серверные приложения и среды могут поддерживаться тем или иным образом, если они поддерживают либо заголовки HTTP, либо переменные среды, установленные из nginx. Атрибуты Shibboleth передаются в ваше приложение либо через переменные среды nginx (через shib_request_set
) или через shib_request_use_headers on;
для заголовков HTTP (будьте осторожны с подделкой). Я никогда не использовал Passenger для размещения приложения, но в вашем случае, похоже, вы могли бы использовать passenger_env_var
и shib_request_set
чтобы добавить атрибуты Shibboleth в ваше приложение.
Полный процесс установки находится в репозитории GitHub по адресу https://github.com/nginx-shib/nginx-http-shibboleth.
Отказ от ответственности: Я в настоящее время поддерживаю этот модуль.
Заметка: этот модуль заменяет все предыдущие сообщения в блогах или вики-статьи, которые я, возможно, написал ранее.
Сам еще не пробовал, но оформить заказ Записи Дэвида Бейти на вики Shibboleth.