OpenSSO, бегущий за обратным прокси -перенаправлением

StackOverflow https://stackoverflow.com/questions/7314311

  •  26-10-2019
  •  | 
  •  

Вопрос

Мы используем OpenSSO для аутентификации пользователей в наших приложениях. Каждое приложение живет за обратным прокси, так как OpenSSO и когда пользователь аутентифицировал, имя пользователя из SSO используется для создания пользовательского сеанса в приложении.

OpenSso развернуто в приличке на порту 8080 на хосте admin.mynet, поэтому при запуске без обратного прокси -сервера он доступен через http admin.mynet: 8080/opensso

SSO -сервер должен быть доступен только через обратный прокси и через HTTPS на порту 443, который будет переведен NGINX на внутренний HTTP Resquest на порт 8080. Имя хоста должно быть разрешено на прокси, а не SSO -сервер. Таким образом, нажимать https admin.mynet/opensso должен показывать страницы SSO.

Проблема в том, что эта конфигурация запускается, нажимая https: //admin.mynet/openso/ui/login SSO отправляет обратно 302 с местоположением http: //admin.mynet: 8080/opensso/ui/login. Анкет Таким образом, SSO не хочет обрабатывать запросы, поступающие из

Это было полезно?

Решение

Предполагая IP -адрес 10.0.0.10 для admin.mynet, должен работать следующий блок:

server {
   listen 443;
   server_name  admin.mynet;   
   ssl          on;
   location / {
        proxy_pass        http://10.0.0.10:8080;
        proxy_set_header  X-Real-IP  $remote_addr;
   }
   location /opensso {
        proxy_pass        http://10.0.0.10:8080;
        proxy_set_header  X-Real-IP  $remote_addr;
        proxy_set_header  Host admin.mynet:8080;
   }
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top