我有一个用 ASP.net core 编写的 Intranet 应用程序,当我在本地主机上运行此应用程序时,我会收到一个弹出窗口,要求我进行身份验证,一旦我输入我的域名\我的用户名和密码,它就会对我进行身份验证并让我运行应用程序。基本上,我输入 Windows 用户名和密码,然后就可以看到该应用程序。下面是我得到的屏幕:
这是我尝试过的:
这是我在 web.config 文件中的内容:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<security>
<authentication>
<anonymousAuthentication enabled="false" />
<windowsAuthentication enabled="true" />
</authentication>
</security>
</system.webServer>
</location>
<runtime>
</runtime>
</configuration>
这是我的 IISExpress 设置:
任何帮助将不胜感激。
这几乎可以肯定不是文件权限问题。但您可能需要检查一些事情。
第一步是尝试从命令行/终端托管它。
导航到项目的根目录(csproj 所在的位置)并输入
dotnet run
看看它是否会托管它 - 并运行它并消除身份验证问题。如果确实如此,那么您就已经找到了罪魁祸首。
抱歉,我不能说得更具体,但根据您提供的信息量,这更像是一个故障排除场景。
这似乎是一个基本身份验证模式弹出窗口 - 浏览器显示,当 Web 服务器发送标头时,表明需要授权并且它接受基本身份验证。 (像这样:如何显示HTTP 401基本身份验证对话框)
如果您正在运行 IIS 或类似的东西,则可能有一个设置启用了基本身份验证并导致这种情况发生。如果您不希望发生这种情况,您需要找到该设置,将其关闭,并且可能还打开允许匿名的设置。