Czy można używać Shibboleth 2 z Nginx + Passenger?

Odpowiedzi:

8

Dopóki FastCGI nie obsługuje trybu „autoryzującego”. Dokumentacja Shibboleth 2 opisuje aplikację FastCGI SP, ale wyjaśnia, że ​​nie działa ona z Nginx, ponieważ brakuje trybu „autoryzacji” wymaganego dla filtra.

Wątek Nginx pokazuje, że wiele osób chce trybu „autoryzatora”, ale jego wdrożenie jest zbyt trudne. Kiedy ludzie próbują się poddać .

Plakat Alex w tym wątku Railsów udostępnia kod Ruby dla autoryzacji Shibboleth, ale wygląda na to, że użył Apache. Inne plakaty używające Nginx wciąż nie mogły sprawić, by działało.

Turadg
źródło
1

Tak, to możliwe. Zainstaluj i skonfiguruj nginx-http-shibbolethmoduł dla nginx, który umożliwia nginx zrozumienie części specyfikacji autoryzatora FastCGI, które może obsługiwać nginx ; wystarczająca do pomyślnego uwierzytelnienia Shibboleth. Twoja instalacja będzie wymagała kompilacji FastCGI Shibboleth Service Provider (SP) i odpowiedniej konfiguracji nginx do komunikacji z aplikacjami shibauthorizeri shibresponderFastCGI.

Wszystkie aplikacje i środowiska zaplecza mogą być obsługiwane w pewien sposób, zakładając, że obsługują albo nagłówki HTTP, albo zmienne środowiskowe ustawione z nginx. Przekazywanie atrybutów Shibboleth do aplikacji odbywa się albo przez zmienne środowiskowe nginx (via shib_request_set), albo przez shib_request_use_headers on;nagłówki HTTP (uważaj na fałszowanie). Nigdy nie korzystałem z aplikacji Passenger do hostowania aplikacji, ale w twoim przypadku wygląda na to, że możesz użyć passenger_env_vari shib_request_setprzenieść atrybuty Shibboleth do swojej aplikacji.

Pełny proces instalacji znajduje się w repozytorium GitHub na https://github.com/nginx-shib/nginx-http-shibboleth .

Oświadczenie: Jestem bieżącym opiekunem tego modułu.

Uwaga : ten moduł zastępuje wszystkie poprzednie posty na blogu lub wpisy na wiki, które mogłem wcześniej napisać.

davidjb
źródło