вторник, 22 мая 2012 г.

PicoLisp и авторизация через Kerberos-2

Как и обещал - продолжение истории с керберос-аутентификацией в PicoLisp.
В процессе ковыряний с исходниками Lighttpd в попытках их скомпилировать с поддержкой керберос я уже более-менее разобрался в самом процессе аутентификации. Видимо поэтому неожиданно родилась мысль - а не попробовать ли обойтись без костылей и прикрутить поддержку керберос непосредственно в сам PicoLisp.
После некоторых экспериментов остановился на варианте с компиляцией библиотеки и вызовом оной с помощью функции native.
Код был безжалостно выдран из недр Lighttpd, с пыхтением и изрядными матами в адрес си, в котором до сих пор нет нормальных строк а-ля Delphi, с copy-on-write и подсчетом ссылок...
Результат можно взять здесь
Для удобства использования добавлена обертка для ldapsearch, в итоге имеем удобную SSO-аутентификацию без дополнительных frontend-ов, плюс подтягиваем нужные данные в профиль пользователя из Active Directory

Комментариев нет: