KRB_AP_REQ билет от SSPI - PullRequest
       79

KRB_AP_REQ билет от SSPI

0 голосов
/ 21 июля 2011

У меня есть серверное приложение Linux, которое использует Kerberos для аутентификации клиента и клиент, который должен работать в Windows. Билеты Kerberos выдаются Windows Active Directory. Клиент успешно проходит аутентификацию на сервере, если я использую MIT KfW 3.2.2. API для получения билетов AS и TGS с сервера Kerberos и сохранения их в хранилище учетных данных kerberos. Но проблема этого подхода заключается в том, что пользователю необходимо снова ввести свои учетные данные. Решение было бы получить доступ к хранилищу MS LSA, но это не работает. Так же как и приложение ms2mit.exe. Не имеет значения, запускаю ли я его как обычный пользователь или как администратор, или полностью отключаю UAC. Вот почему я хотел бы использовать SSPI на клиенте, чтобы создать сообщение KRB_AP_REQ, которое я отправлю на сервер. Это возможно. Если да, как это можно сделать? Если нет, каковы мои другие варианты? Обратите внимание, что сервер уже собран, и для его изменения потребуются значительные усилия, поэтому я хотел бы найти решение для Windows.

1 Ответ

1 голос
/ 28 июля 2011

Вы можете использовать функции AquireCredentialsHandle и InitializeSecurityContext подсистемы Windows SSPI для получения действительного билета и аутентификации на сервере на базе Linux.

Первое использование AcquireCredentialsHandle() и затем использовать несколько вызовов на InitializeSecurityContext с токенами, полученными с вашего сервера до вашей аутентификации.

...