Единый вход ActiveDirectory и Java EE - PullRequest
0 голосов
/ 09 октября 2010

Сценарий:

  1. Мы продаем программное обеспечение Java EE (JBoss + SpringSecurity) крупным корпорациям, которые в основном используют ActiveDirectory
  2. Наше программное обеспечение Java EE (JBoss) можно подключить к ActiveDirectory, однако для этого необходимо добавить роли в ActiveDirectory, т.е. cn = esp_administrator, cn = Roles, o = company, o = com
  3. Насколько я понимаю, JBoss потребуется учетная запись для "привязки" к ActiveDirectory для выполнения поиска, то есть cn = admin, cn = Users, o = company, o = com
  4. Пользователям по-прежнему необходимо входить в наше приложение Java EE вручную (не единый вход)
  5. Скажите, что наше приложение Java EE http://javaee-webapp, и один из порталов компании находится на http://intranet-portal скажем, используя Atlassian Jira

Как я могу реализовать единый вход с этой настройкой? Одна вещь, которая приходит на ум, - это чтение файлов cookie из http://intranet-portal, но это работает, только если наше веб-приложение Java EE является поддоменом http://intranet-portal, т.е. http://intranet-portal/javaee-webapp

.


Я прочитал следующее QA

Единая регистрация для веб-приложения

Прозрачный сеанс пользователя на нескольких сайтах (единый вход + единый выход)

Не думаю, что клиенты хотят, чтобы мы установили Shibboleth IDProvider только для единого входа.

Кроме варианта "Запомнить меня", какой у меня есть выбор?

1 Ответ

1 голос
/ 09 октября 2010

Вы действительно можете использовать Shibboleth (или, возможно, OpenSSO ). Это может быть довольно сложным и должно быть развернуто для всех веб-сайтов ( Поставщики услуг ), которые подпадают под действие этого единого входа. Он специально разработан для SSO-аутентификации и авторизации, которые не обязательно принадлежат одному сайту. Если ваши клиенты хотят использовать единый вход в среде, которая не слишком тесно связана, им потребуется такая технология. (Обратите внимание, что самая сложная часть реализации Shibboleth заключается не столько в установке программного обеспечения SP или IdP, сколько в установлении политик вокруг выпуска и авторизации атрибутов: больше об администрировании и политике, чем о технической проблеме).

Если клиентские машины, с которых собираются подключаться ваши клиенты, также находятся под их контролем (например, если они все настольные компьютеры Windows, которые может настраивать компания), вы можете посмотреть на SPNEGO . Это можно сделать для работы с клиентами Windows / Linux / OSX с использованием IE / Firefox (по крайней мере), но вам необходимо настроить клиенты так, чтобы они указывали на сервер Active Directory (как Kerberos KDC). Это может сбивать с толку, если пользователям приходится делать это на своем компьютере.

Хотя решение SPNEGO может быть проще, если вы можете контролировать конфигурацию клиентских компьютеров, решение Shibboleth / OpenSSO будет более гибким в этом отношении (и IdP Shibboleth может использовать SPNEGO в качестве механизма аутентификации, если вам это нужно все).

...