Я использую проверку подлинности Windows в своем приложении ASP.NET MVC, и мне предлагается ввести учетные данные на моем веб-сервере, который является членом домена [у меня есть учетные данные домена, и я могу нормально пройти проверку подлинности], однако, когда действие моего контроллера вызывает «User.Identity.Name» при попытке сравнить значение базы данных с текущим вошедшим в систему пользователем, это возвращает учетную запись SAM с локального компьютера, а НЕ учетную запись SAM из ДОМЕНА:
Имя пользователя локального компьютера (которое возвращает User.Identity.Name): LOCALPC \ username
Что я ожидаю (это то, что я проверяю в AD как): DOMAIN \ username
Это вызывает у меня проблемы, потому что я не могу точно подтвердить пользователя, используя только имя пользователя.
Мне что-то не хватает, есть ли способ вернуть то, что я в настоящее время аутентифицирован на веб-сервере, в отличие от локальной учетной записи SAM на клиентском компьютере?
Причина, по которой это важно, заключается в том, что не все клиенты приложений интрасети будут присоединены к домену (машины, которые не присоединены к домену, но принадлежат пользователям с учетными записями AD).