Как я могу взаимодействовать с сервером Kerberos из моего собственного приложения - PullRequest
1 голос
/ 04 января 2009

В моей сети есть сервер kerberos для аутентификации по имени пользователя и паролю. На машинах, на которых запущено мое приложение, работают клиенты Kerberos, поэтому пользователи могут использовать kinit и т. Д.

Как мне взаимодействовать с сервером программно, из моих собственных приложений? Предпочтительным языком для примера является C.

Я хочу, чтобы пользователи моего приложения проходили аутентификацию на сервере Kerberos перед доступом к определенным функциям. Я ожидаю, что мне придется спросить их имя пользователя и пароль - возможно, kinit не был вызван.

Машины, на которых установлены приложения, работают под управлением OS X и Debian / Linux.

Я полагаю, что ответ вполне может касаться GSSAPI. Если да, есть ли хорошие уроки для этого?

Ответы [ 3 ]

3 голосов
/ 05 января 2009
1 голос
/ 04 декабря 2009

Посмотрите на Heimdal, у них есть обширный API Kerberos, и на сайте ниже есть отличная установка doxygen, описывающая API.

http://www.h5l.org

0 голосов
/ 04 января 2009

GSSAPI - действительно рекомендуемый подход, но точные детали будут зависеть от вашей языковой среды и от того, требуется ли вам взаимодействие с Windows. Ваш провайдер Kerberos Windows или что-то еще?

В Windows Kerberos - это собственный протокол, поддерживаемый ОС, и многие высокоуровневые API Win32 предоставят его бесплатно. Взаимодействие с сервером Kerberos, отличным от Windows, возможно, но не тривиально.

В UNIX вам может понадобиться сначала установить поддержку клиента Kerberos и заставить ее работать, но если в вашей сети уже есть сервер Kerberos, возможно, это уже сделано для вас.

Windows включает в себя реализацию GSSAPI, как и Java, и большинство версий UNIX имеют реализацию. Я считаю, что дополнения GSSAPI доступны и для PHP.

Если вы можете добавить больше информации о ваших требованиях, я могу немного подтвердить этот ответ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...