чудо{вищные} заметки

Sorry for my terrible english. My native language is PHP.

NTLM-авторизация,браузеры и негодяи…

Нарисовалась интересная задачка — авторизовывать пользователя через AD.
Собственно задачка для меня не нова — в нескольких сервисах я её уже реализовал — через LDAP, на одном, доступ к которому есть из «внешнего мира», — через mod_auth_pam (winbindd на сервере установлен, настроен и работает как часы «Слава») — т.е. как бы задачка — казалось бы вовсе не задачка…. Но! Но хочется людЯм чтоб «не выскакивало это окошечко»… Обратили внимание на SharePoint сервер, который (якобы) не спрашивает логин-пароль — объясняю — на самом деле спрашивает, просто этого не видно — говорят — ну и сделай так же — ну и делаю так же… НО! но «без проблем» это делать умеет только IE (Mozilla «в принципе» тоже умеет), а как же Ёпера, она же, убогая, не умеет ВАЩЕ NTLM ?
Забить на Оперу Допустим что Оперой не пользуются… а в принципе.. безопастна ли NTLM-авторизация? посмотрел на PHP NTLM GET LOGIN… судя по реализации можно смело предположить, что потенциальный негодяй может «завернуть» в base64_encode любой логин… (аналогичная история получится с mod_ntlm — первые версии своих «сервисов» делал через него, но после перестановки системы на сервере, он начал «конфликтовать» с разными модулями апача и мне надоело его править)…
Пока оставляю всё как есть — «клиент: форма -> клиент: des_encrypt ->сервер: ldap_connect->сервер: ldap_bind-> сервер: return (true || false) »

В такой схеме (на мой взгляд) безопасно передаются данные и безопасно(а главное «честно») проверяется пара логин-пароль согласно всем политикам AD — всякие блокировки по времени, expires и т.д. тогда как при NTLM можно с лёгкостью обойти все эти механизмы

А собственно вопрос — а верно ли я понял, что NTLM — «АЦтой» ? А есть ли способ использовать NTLM прозрачно для клиента и безопасно для сервера?

Реклама

Декабрь 27, 2005 - Posted by | dev, php, unix, web

1 комментарий »

  1. Вы видимо путаете NTLM и Basic авторизацию, в NTLM вообще логин и пароль не передается в base64, он специальным образом хэшируется согласно кода полученного на сервере, т.е. клиент выдает код, сервер выдает ему другой — клиент шифрует согласно полученного кода и выдает серверу, сервер проверяет и логинит….Есть другое…Я весь интернет облазил в попытке найти возможность логина клиента из «моего ASP.NET» приложения прямо в SharePoint без окошка NTLM. По ходу дела это невозможно, так как невозможно из одного сайта авторизовать клиента в другой сайт через NTLM…

    комментарий от sbs | Октябрь 19, 2009


Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: