Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.NET Windows身份验证+服务器始终获取匿名用户_C#_Asp.net_Authentication_Active Directory - Fatal编程技术网

C# ASP.NET Windows身份验证+服务器始终获取匿名用户

C# ASP.NET Windows身份验证+服务器始终获取匿名用户,c#,asp.net,authentication,active-directory,C#,Asp.net,Authentication,Active Directory,以下是我的设想: 我有一个内部网应用程序。我想让网络用户使用Windows身份验证功能自动登录到应用程序。如果用户没有进入我的网络,我会弹出一个登录屏幕给他们 因此,我将身份验证模式更改为web.config文件,改为Windows。然后我使用HttpContext.User.Identity对象将登录的用户接入网络。因此,我将该应用程序运行到我的本地主机上,效果非常好 当我将应用程序发布到服务器时,当我尝试自动登录时,Identity对象始终为空 因此,我尝试了以下步骤: 拒绝匿名用户,这不允

以下是我的设想:

我有一个内部网应用程序。我想让网络用户使用Windows身份验证功能自动登录到应用程序。如果用户没有进入我的网络,我会弹出一个登录屏幕给他们

因此,我将身份验证模式更改为web.config文件,改为Windows。然后我使用HttpContext.User.Identity对象将登录的用户接入网络。因此,我将该应用程序运行到我的本地主机上,效果非常好

当我将应用程序发布到服务器时,当我尝试自动登录时,Identity对象始终为空

因此,我尝试了以下步骤:

拒绝匿名用户,这不允许任何匿名用户进入应用程序,但我遇到了一个问题:当用户未进入我们的网络时,服务器会从窗口服务器弹出默认的身份验证窗口,而不是我的个人登录屏幕

让匿名用户进来。如果我摆脱了它,任何用户都可以访问该页面,但它总是进入登录屏幕,即使我进入了我的本地网络

所以,我需要的是:当用户进入本地网络时,不需要登录就直接进入。如果他们没有,弹出一个登录屏幕

有人能帮我弄清楚发生了什么事吗

谢谢大家!

执行以下操作

<identity impersonate="true" />
<authentication mode="None" />
<authorization>
  <deny users="?" />
</authorization>

希望有帮助。

这是一个常见问题,您需要根据它检查配置。我已将模拟更改为true,并仅使用标记。更新您的答案,以便我可以接受。