В нашей компании настроено несколько доменов, на каждом из которых размещен один веб-сайт. В настоящее время каждый домен имеет собственную аутентификацию, которая выполняется с помощью файлов cookie.
Когда кто-то вошел в один домен, ему необходимо получить доступ к чему-либо из другого, пользователю необходимо снова войти в систему, используя другие учетные данные на другом веб-сайте, расположенном в другом домене.
Я думал о переходе к системе единого входа (SSO), чтобы эту проблему можно было устранить. Я был бы признателен за любые идеи о том, как этого можно достичь, поскольку у меня нет опыта в этом отношении.
Спасибо.
Изменить: веб-сайты представляют собой смесь сайтов в Интернете (внешний) и интранет (используются внутри компании).
authentication
single-sign-on
паскаль
источник
источник
Ответы:
Реализованное здесь решение SSO работает следующим образом:
Ноты:
источник
Не изобретайте колесо заново. Существует ряд пакетов междоменного единого входа с открытым исходным кодом, таких как JOSSO, OpenSSO, CAS, Shibboleth и другие. Если вы используете технологию Microsoft повсюду (IIS, AD), вы можете вместо этого использовать федерацию Microsoft (ADFS).
источник
Насколько разные имена хостов?
Эти хосты могут использовать файлы cookie:
Но они не могут:
В первом случае вы можете использовать решение на основе файлов cookie. Подумайте GUID и таблицу сеанса базы данных.
источник
Если вы используете Active Directory, каждое приложение может использовать AD для аутентификации, тогда вход в систему может быть беспрепятственным.
В противном случае, если приложения могут общаться друг с другом за кулисами, вы можете использовать идентификаторы сеанса и иметь одно приложение, обрабатывающее идентификаторы, обслуживающие все другие ваши приложения.
источник