Я не совсем уверен, что дал правильное описание.
По сути, я пытаюсь добавить Windows Authentication
на сайт node.js.
Я отправляю обратно 401
с заголовком WWW-Authenticate: Negotiate
.
Браузер немедленно возвращает заголовок authorization
со значением Negotiate <some string of characters>
.
На данный момент я просто хочу убедиться, что токен действителен. Я пытался найти примеры других фреймворков с открытым исходным кодом, которые делают то же самое, но я действительно не знал, что ищу.
Просто для ясности: пользователь уже вошел в домен и не отправляет информацию об имени пользователя и пароле.
(Возможно, я не до конца понимаю, как все это работает).
Я только что нашел это.
Сервер декодирует NegTokenInit, извлекает поддерживаемые MechTypes (тот, что находится впереди MechTypeList, должен быть либо Kerberos Legacy, либо Kerberos V5), проверяет, является ли он одним из ожидаемых, а затем извлекает MechToken и аутентифицируется с помощью gss_accept_security_context.
Если я правильно понял, я ищу gss_accept_security_context
.
Я также безуспешно пытался использовать GSSManager
в java. Я разместил эту проблему здесь.
Я иду в правильном направлении?