Назад | Перейти на главную страницу

Единый вход с Apache и LDAP

У меня есть сервер с двумя веб-приложениями: Gerrit и Mantis BT. Теперь эти приложения подключаются к серверу LDAP для аутентификации пользователей, и он отлично работает. Но пользователь должен пройти аутентификацию для каждого приложения; Я хотел бы разрешить пользователю пройти аутентификацию только один раз (возможно, с использованием Apache + LDAP) и повторно использовать учетные данные для автоматического входа пользователя в оба приложения.

Моя сетевая архитектура сейчас:

Сетевая архитектура, которую я хочу:

Я даже не знаю, что искать в Google, так как я не знаком с HTTP-аутентификацией и администрированием серверов в целом. Любое решение или указатели на то, что я хочу, будут оценены.

Конфигурация:
Сервер Ubuntu 14.04 LTS
Apache2 2.4
Геррит 2.10
Mantis BT 1.2.19

Важные заметки:
Я хочу оставить Геррита.
Я могу использовать другой трекер ошибок, если он легко выполняет то, что я хочу.

Существует несколько стандартов для веб-единого входа. LDAP - это не механизм единого входа, а просто поиск информации. Обратитесь к своим поставщикам, чтобы узнать, поддерживают ли эти приложения Kerberos (Apache использует mod_auth_kerb) или SAML (например, Shibboleth). Для каждого потребуется некоторая инфраструктура, такая как Active Directory, FreeIPA, Shibboleth, Oracle Identity Federation и т. Д.

Я бы предложил использовать аутентификацию Kerberos / GSSAPI, если вы хотите использовать единый вход для своих приложений. С сервером управления идентификацией с централизованным хранилищем для ваших пользователей и групп вы можете подключить свой Веб-приложения Apache, геррит или Redmine. Для сервера IdM вы можете использовать FreeIPA проект, который предоставляется бесплатно и имеет открытый исходный код.

В вашем случае также имеет смысл использовать Univention Corporate Server (UCS), поскольку он включает механизм единого входа через SAML 2.0, начиная с последней версии (UCS 4.1). Подробнее об этом в Руководство по UCS. Пользовательские данные, которыми вы должны управлять, хранятся и администрируются в openLDAP, который также включен в UCS.

Если вы тестируете UCS, которую вы можете бесплатно скачать с Сайт Univentionи его функция SSO, ваше приложение должно быть настроено только на использование UCS в качестве IdP. Для этого еще раз проверьте Руководство по UCS.

Поскольку UCS также основан на Debian, ваши клиенты Ubuntu могут быть легко интегрированы в домен UCS. Подробнее об этом снова в Руководство по UCS. Интеграция LDAP управляется через SSSD.