В чем разница в среде asp.NET с включенной аутентификацией Windows и имитацией идентификации между HttpContext.Current.User.Principal и WindowsIdentity.GetCurrent ()?
Согласно этому форуму WindowsIdentity.GetCurrent().Name против User.Identity.Name:
WindowsIdentity.GetCurrent().Name
User.Identity.Name
User.Identity.Name представляет удостоверение, переданное из IIS. WindowsIdentity.GetCurrent().Name - это идентификатор, под которым выполняется поток.
В зависимости от настроек аутентификации вашего приложения в IIS они будут возвращать разные значения:
<b>| <a href="https://msdn.microsoft.com/en-us/library/xh507fc5.aspx" rel="noreferrer">Anonymous</a> | <a href="https://msdn.microsoft.com/en-us/library/aa292114.aspx" rel="noreferrer">Impersonate</a> | User.Identity.Name | WindowsIndentiy.GetCurrent() |</b> |-----------|-------------|--------------------|-------------------------------| | Yes | True | Empty String | IUSR_<<i>machineName</i>> | | Yes | False | Empty String | NT Authority\Network Service | | No | True | domain\user | domain\user | | No | False | domain\user | NT Authority\Network Service |
Легенда :