SwoDs
@SwoDs
PHP YII2

Как сделать single sign-on (SSO) AD на PHP?

Проблема:
Внутри сети есть разные корпоративные сайты написанные на PHP, сервера на Linux.
Все пользователи сидят на Windows машинах и заходят под учетками доменными, заходя на внутренний сайт приходится вводить логин пароль от винды (происходит авторизация по LDAP), пользователям не удобно на каждом сайте вводить логин и пароль

Задача:
Нужно реализовать вход без пароля логина, но делать аунтификацию по виндовой учетке, под которой открывается бразуер или что то в этом роде =)

Коммент:
Ранее такие задачи решали с помощью ActiveX но данная технология устарела и работа только в IE а нужно что бы во всех браузерах

------
Реально ли сделать задачу и как?
  • Вопрос задан
  • 2507 просмотров
Решения вопроса 1
SwoDs
@SwoDs Автор вопроса
PHP YII2
Давно задал вопрос, но раз уж ответа не было...

Сделал я просто отдельное приложение которое делало авторизацию через себя, с другими приложениями обменивалось токенами, - это в общих чертах
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@brestows
Да делается это довольно просто, но чистым PHP не обойдется, разово придется настроить браузер на компе пользователя, у меня это делается через групповые политики. Сайт должен быть добавлен в доверительную зону, после чего при заходе на такой сайт, севрер говорит браузеру что надо авторизоваться черед kerberos, браузер авторизируется и отсылает серверу спецальный токен, сервер на основании этого токена идет в AD и проверяет его валидность, если он валидный то в ответ получает имя пользователя, а дальше уже чисты LDAP, так же при правильно настроеном браузере в параметрах передаваемых браузеру может быть переменная REMOTE_USER в которой будет имя пользователя авторизованого через прозрачную авторизацию. Описал я это очень грубо и поверхностно, сам реализовывал я это на perl, но думаю что на php мало чем отличается.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Ведисофт Екатеринбург
от 25 000 ₽
YCLIENTS Москва
от 200 000 до 350 000 ₽
от 300 000 до 500 000 ₽
20 апр. 2024, в 18:09
70000 руб./за проект
20 апр. 2024, в 18:04
3000 руб./за проект
20 апр. 2024, в 17:55
3000 руб./за проект