Надеюсь, это не парадоксально, но я не знаю, как это сделать ...
У меня есть VS2008 ASP.NET MVC Project со следующей записью Web.Config:
<authentication mode="Windows">
<forms name=".ADAuthCookie" timeout="10" />
</authentication>
Это позволяет посетителю автоматически войти в систему с помощью имени пользователя DOMAIN \ username, которое они использовали для входа в Windows. (Верно?)
Это работает с моим сервером разработки (http://localhost:xxxx),, но не с моим сервером IIS (http://localhost).) Возможно, потому что сервер разработки "запускается" моим локальным пользователем (который имеет права чтения ActiveDirectory на домен) и потому, что IIS «запускается» пользователем IUSR_WORKSTATION, который этого не делает. (Правильно?)
Если все вышеперечисленное является верным, как я могу выдать себя за пользователя IIS (например, за мое собственное имя пользователя), чтобы единственной аутентификацией текущего пользователя было имя входа Windows? (как в примере ниже) ?
Или пользователю IUSR_WORKSTATION должны быть предоставлены ActiveDirectory? права на чтение (не рекомендуется, поскольку я буду часто переключать серверы / пользователей IUSR_)
<identity impersonate="true" userName="DOMAIN\myuser" password="mypass"/>
<authentication mode="Windows">
<forms name=".ADAuthCookie" timeout="10" />
</authentication>
<identity impersonate="false"/>