Создайте токен на основе пользователя windows, который делает запрос - PullRequest
0 голосов
/ 13 января 2020

Я искал ответ на этот вопрос и не нашел ничего, что могло бы ответить на мой вопрос. Кажется, это должно быть легко (но явно нет).

У меня есть API, который аутентифицируется с использованием токена. Этот токен я генерирую из своего приложения - более конкретно, у меня есть новый веб-вызов Token Generation, который вернет токен. В настоящее время я передаю повару ie информацию о пользователе и пароле, и он использует это, чтобы определить, кто я и что мне следует разрешить делать. Это все работает абсолютно нормально и неуклюже.

Я выполняю этот процесс, заставляя Token Generation использовать OWIN Cook ie Authentication, что означает, что cook ie читается и Identity установлен. , Затем я могу использовать это удостоверение, чтобы подтвердить, разрешен ли пользователю доступ к системе.

Теперь я хочу заменить процесс аутентификации Cook ie на аутентификацию пользователя Windows ( все основано на windows, и это будет вариант, поэтому пользователи, не являющиеся windows, все еще могут использовать маршрут аутентификации cook ie). Но я не могу понять, как это сделать прямо.

Обратите внимание, что на самом деле мне не нужно проверять подлинность пользователя или вообще ссылаться на AD. Если вы предоставляете пользователя windows, который совпадает с пользователем в системе, вы можете войти в систему.

Так как же я могу - легко - ввести запрашивающего пользователя в Identity Name? Или это невозможно?

1 Ответ

0 голосов
/ 13 января 2020

Если вы ищете информацию о текущем пользователе, обращающемся к вашей программе, предполагая, что программа работает на компьютере пользователя и основана на windows, вы можете просто запросить windows для имени пользователя пользователя или любую другую общедоступную информацию о пользователе.

См. https://docs.microsoft.com/en-us/dotnet/api/system.environment?view=netframework-4.8 для получения информации о классе Enviroment и его функциях.

Если бы вы могли предоставить некоторый код или дополнительную ясность, я мог бы помочь вам в дальнейшем.

...