#asp.net #security #windows-7 #iis-7.5
#asp.net #Безопасность #windows-7 #iis-7.5
Вопрос:
Я запускаю веб-приложение на Windows 7 enterprise iis7.5. Мое веб-приложение использует проверку подлинности Windows и ASP.NET v4.0 applicationpool с identity=applicationpoolIdentity
.
Я хочу получить имя пользователя для входа с помощью context.Request.ServerVariables["LOGON_USER"]
, но это пустая строка. Почему?
Спасибо.
Комментарии:
1. Пожалуйста, не могли бы вы использовать знаки препинания, на этот раз я исправил это за вас.
Ответ №1:
Попробуйте использовать context.User.Identity.Name
вместо этого.
HTH.
Комментарии:
1. Брайан, я пытаюсь сделать то, что ты сказал, но я получаю этот контекст. Пользователь является null.so возникло исключение. спасибо в любом случае.
2. При проверке подлинности Windows это будет работать в той же сети, что и приложение интрасети, но интернет-приложение, если только все не находятся в одном домене, не сможет использовать Windows auth, и, следовательно, оно будет равно null.
3. я остаюсь в режиме интегрированного пула приложений, но перевожу перехват, при котором пользователь, вошедший в систему, переводится в PostAuthenticationRequest (раньше это было в обработчике событий AuthenticationRequest), и теперь это работает