iccube за обратным прокси - PullRequest
       34

iccube за обратным прокси

0 голосов
/ 17 декабря 2018

Я запускаю icCube за nginx, действующим в качестве обратного прокси-сервера, и выполняю запросы https.icCube в качестве внутреннего сервера затем вызывается через http.Запросы, полученные Jetty (icCube) в настоящее время не https.Мне нужна хорошо отформатированная схема запроса URI (содержащая https), поскольку она используется для моей аутентификации SSO, выполненной в настраиваемом фильтре сервлета, установленном в icCube.

Я предполагаю проблему с конфигурацией Jetty, поскольку, как описано в документе Jetty относительноперенаправленный запрос: https://www.eclipse.org/jetty/javadoc/9.4.8.v20171121/org/eclipse/jetty/server/ForwardedRequestCustomizer.html Обратный прокси-сервер (nginx) передает следующие заголовки в jetty:

proxy_set_header   Host                             $host;
proxy_set_header   X-Forwarded-Host                 $host;
proxy_set_header   X-Forwarded-Server               $host;
proxy_set_header   X-Forwarded-For        $proxy_add_x_forwarded_for;
proxy_set_header   X-Real-IP                        $remote_addr;
proxy_set_header   X-Forwarded-Ssl                  on;
proxy_set_header   X-Proxied-Https                  on;
proxy_set_header   X-Forwarded-Proto                $scheme;

Я смотрел в классе конфигурации icCube, обрабатывающем конфигурацию Jetty:

crazydev.iccube.server.http.IcCubeHttpComponentConfiguration

И ничего о перенаправленных запросах.Jetty поставляется с файлами конфигурации по умолчанию, и один соответствует моим потребностям: https://github.com/eclipse/jetty.project/blob/jetty-9.4.x/jetty-server/src/main/config/etc/jetty-http-forwarded.xml

Как я могу применить конфигурацию пересылки?Заранее благодарим за помощь.

1 Ответ

0 голосов
/ 17 декабря 2018

До версии icCube 6.8.5 нельзя было настроить экземпляр ForwardedRequestCustomizer.

Начиная с icCube 6.8.5, файл конфигурации icCube.xml будет содержать новую запись для этой цели:

            <forwardedRequestConfiguration>
                <forwardedOnly>...</forwardedOnly>
                <proxyAsAuthority>...</proxyAsAuthority>
                <forwardedHeader>...</forwardedHeader>
                <forwardedHostHeader>...</forwardedHostHeader>
                <forwardedServerHeader>...</forwardedServerHeader>
                <forwardedProtoHeader>...</forwardedProtoHeader>
                <forwardedForHeader>...</forwardedForHeader>
                <forwardedHttpsHeader>...</forwardedHttpsHeader>
                <forwardedSslSessionIdHeader>...</forwardedSslSessionIdHeader>
                <forwardedCipherSuiteHeader>...</forwardedCipherSuiteHeader>
            </forwardedRequestConfiguration>
...