Apache взаимодействует с Tomcat через mod_auth_openidc

Мне нужно подключить веб-сервер Apache к порту 8079 с экземпляром Tomcat через порт 8080 через модуль mod_auth_openidc (для определенного входа в систему). Цель состоит в том, чтобы продолжить идентификацию пользователя через OpenID Connect в веб-приложении, размещенном на Tomcat, без необходимости дополнительного запроса на вход.

Я настраиваю OIDC в ​​соответствии с запросом сервера OIDC (например, Google) и регистрирую клиент, также я включил mod_jk. Я не могу добраться до последней мили. Я также решил использовать PROXY/REVERSEPROXY в разделе виртуального хоста в файле http.config apache. Пока это не исправляет перенаправление, как предполагалось.

Может ли кто-нибудь оказать помощь?


person Luca    schedule 04.10.2016    source источник


Ответы (2)


Вы можете использовать следующую конфигурацию для проксирования пути, защищенного mod_auth_openidc, к внутреннему серверу, такому как Tomcat:

<Location "/">
  AuthType openid-connect
  Require valid-user
  ProxyPass http://tomcat:8080/
  ProxyPassReverse http://localhost:8080/
</Location>
person Hans Z.    schedule 05.10.2016

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

Я нашел более полный способ заархивировать его.

<Location "/tomcat">
    AuthType openid-connect
    Require valid-user

    RequestHeader set Authorization "Bearer %{OIDC_access_token}e"

    ProxyPass "http://tomcat:8080"
    ProxyPassReverse "http://tomcat:8080"
</Location>
person btafarelo    schedule 07.09.2020