Проверка использования Active Directory с помощью библиотеки (System.DirectoryServices.AccountManagement). Как идентифицировать пользователя, чтобы он автоматически входил в систему. Я получал имя пользователя, используя переменную среды (Environment.UserName) при локальном запуске. Однако не удалось получить имя пользователя после размещения в среде IIS. Имя пользователя не работает в IIS.
Environment.UserName не работает после размещения в IIS. Код с ядром ASP.net 2.0
Ответы (1)
Environment.Username возвращает пользователя в текущем потоке вашего приложения asp.net. Вот почему вы получаете идентификатор пула приложений вместо пользователя для входа при развертывании его в IIS.
Если вы хотите, чтобы IIS возвращал аналогичный результат, вы можете указать пользователя в идентификаторе пула приложений вашего основного приложения asp.net. Тогда Environment.Username вернет аналогичный результат.
https://docs.microsoft.com/en-us/iis/manage/configuring-security/application-pool-identities
Если имя пользователя не то, что вам нужно, вы просто хотите, чтобы приложение обрабатывало идентификатор пользователя клиента. Вы должны включить аутентификацию Windows IIS. Затем вы получите идентификатор от Httpcontext.
person
Jokies Ding
schedule
20.09.2019
ControllerBase.User
docs.microsoft.com/en-us/dotnet/api/.Environment.UserName
просто неправильно. - person Lex Li   schedule 19.09.2019