#apache #jenkins #single-sign-on #reverse-proxy #shibboleth
#apache #дженкинс #единый вход #обратный прокси #shibboleth
Вопрос:
Я пытался обойти shibboleth sso для конкретного пользователя. Только одному пользователю требуется аутентификация паролем для приложения, работающего за обратным прокси-сервером Apache. Остальные все пользователи должны пройти через вход в систему единого входа.
Я попытался настроить несколько файлов карты атрибутов, но тщетно.
Есть идеи по изменению конфигурационного файла shibboleth для обхода единого входа для одного пользователя. Любые предложения по этому поводу приветствуются.
Ответ №1:
Есть ли у вас код, который создает «сеанс приложения» из заголовков / переменных среды в приложении, или приложение напрямую обращается к наличию / отсутствию заголовков / переменных среды, установленных Shibboleth?
Если у вас есть сеанс внешнего приложения, вам просто нужно развернуть некоторый код по отдельному пути, который не защищен Shib, но каким-либо другим способом (возможно, даже Apache Basic Auth), который создаст соответствующий файл cookie сеанса для приложения и выполнит перенаправление.
Если вы используете информацию о сеансе Shibboleth непосредственно в приложении, то вам, вероятно, лучше просто запросить учетную запись IdP.
В любом случае, вы находитесь на территории создания черного хода… поэтому вы должны проявлять крайнюю осторожность, чтобы не реализовать уязвимость, которая может быть каким-либо образом использована, и, честно говоря, StackOverflow недостаточно хорошо знает тонкости вашего приложения, чтобы дать больше, чем общие рекомендации.
Я полагаю, что короткий ответ таков… Я не думаю, что вы найдете короткий ответ.
Комментарии:
1. Серверное приложение, о котором я говорил, — это Дженкинс. Дженкинс работает за прокси-сервером apache reverese, и SSO до сих пор работает отлично. Теперь мы хотели использовать python-jenkins api для пользователя (уже включен токен API для пользователя), и каким-то образом он выходит из строя из-за неавторизованной ошибки из shibboleth.
2. к вашему сведению: пользователь API недоступен в ADP