У меня есть проект с целью показа нескольких веб-приложений через Интернет.Эти приложения создаются с использованием IIS / DotNet и Apache / Php.
. Интернет-пользователь должен войти в систему только в одном месте, а затем иметь доступ к любому приложению.Каковы возможные решения этого сценария?Одно требование заключается в том, чтобы изменения в существующих приложениях были минимальными, а другое - использовать ActiveDirectory для управления пользователями.
На сегодняшний день я нашел следующие решения:
- использование обратного прокси-сервера (COTSпродукт) публиковать веб-приложения в Интернете, а прокси-сервер должен позаботиться об аутентификации / SSO
- с использованием аутентификации с помощью форм и файлового cookie всего домена;Это решение требует внесения изменений в существующие приложения и ручного входа в AD
- . Создайте новое приложение, используя проверку подлинности с помощью форм, и после того, как пользователь введет учетные данные в это приложение, используйте эти учетные данные для отправки запроса XMLHttpRequest другим приложениям (при этом будет выполнен вход в систему).пользователь)
- использует клиентские сертификаты, чтобы при подключении пользователя к приложениям его сертификат обрабатывал процесс входа в систему;этот подход имеет проблему, когда в клиентском браузере установлено более одного сертификата, поскольку браузер попросит пользователя выбрать сертификат (и это произойдет для каждого приложения)