本地系统中的Windows身份验证

时间:2017-03-07 20:43:23

标签: asp.net windows-authentication

这是default.aspx文件

  <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs"Inherits="Default"%>

<!DOCTYPE html>

 <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
Welcome to sample website:)
</div>
</form>
</body>
</html>

这是web.config文件

 <?xml version="1.0"?>
 <configuration>
 <system.web>
 <authentication mode="Windows"/>
 <identity impersonate="true"/>
 <compilation debug="true" targetFramework="4.5" />
 <httpRuntime targetFramework="4.5" />
 </system.web>
 <system.webServer>
 <validation validateIntegratedModeConfiguration="false"/>
 </system.webServer>
 </configuration>

我无法获得Windows身份验证,我也在applicationhost.config文件中进行了必要的更改。请帮助我如何继续进行。

1 个答案:

答案 0 :(得分:0)

您的web.config配置不完整。

请参阅:Enabling Windows Authentication within an Intranet ASP.NET Web application

如果您只是搜索互联网,还有很多关于为asp.net设置Windows身份验证的指南/博客文章。

您没有告诉ASP.NET拒绝匿名用户,这就是您没有获得登录提示的原因。

<configuration>
    <system.web>
        <authentication mode="Windows" />
        <authorization>
            <deny users="?"/>
        </authorization>
    </system.web>
</configuration>
  

注意指令内   以上部分告诉ASP.NET拒绝访问该应用程序   对网站的所有“匿名”用户(“?”字符表示   匿名用户)。这会强制Windows对用户进行身份验证,并且   确保用户名始终可从服务器上的代码获得。