活动目录+ HTTP身份验证
好吧,我正在研究一个asp.net web应用程序,用于内部跟踪我们的工作人员在校园外面以及他们在做什么。活动目录+ HTTP身份验证
我们目前使用的系统使用“NoSQL”表(它不是100%熟悉的),但它是使用cgi脚本的旧系统。所以我在asp.net中重写它以更新系统,使其更具现代感,采用现代设计,并为其添加了Active Directory身份验证,因为它使用自己的用户数据库,与我们在其他地方使用的独立于AD的用户数据库分开。
我发现了一篇文章enable Active Directory Authentication通过web.config
,但是,我宁愿不使用表单身份验证,我想将它绑定到HTTP提示进行身份验证。我尝试了一些Google搜索来尝试寻找解决方案,但我似乎无法找到那些之前完成此操作的人。
在此先感谢。
首先,如果你打算用自己的域凭据进行身份验证的人,你应该确保使用HTTPS否则他们的密码将使用容易获得的网络嗅探器。
好吧,所以你在说什么是Windows身份验证模式在ASP.NET与IIS基本身份验证。您需要在您的web.config中配置以下内容:
<configuration>
<connectionStrings>
<add name="ADConnectionString" connectionString="LDAP://your.ad.fqdn.com/DC=com,DC=fqdn,DC=ad,DC=your"/>
</connectionStrings>
<system.web>
<membership defaultProvider="ADMembershipProvider">
<providers>
<add name="ADMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="ADConnectionString" connectionUsername="MYNTDOMAIN\someuser" connectionPassword="asdf1234"/>
</providers>
</membership>
<authentication mode="Windows"/>
</system.web>
</configuration>
接下来,您将要为基本身份验证配置IIS。假设您正在运行IIS 7.x,请在IIS管理器中找到您的应用程序的根文件夹,然后单击身份验证。您应该能够在此处启用基本身份验证。您还可以启用Windows身份验证以允许IE/Chrome用户自动登录:
Windows身份验证通常是透明的(他们会自动使用登录到Windows的凭据进行身份验证)。如果您希望他们被迫输入凭据,则您的页面需要返回401 HTTP状态代码。
这听起来像你想在你的ASP.NET应用程序中启用Windows身份验证,而不是表单身份验证。它基本上涉及将web.config中的身份验证类型从“Forms”更改为“Windows”,然后在IIS中设置用户/组权限。以下链接详细介绍了这些变化。
更多信息: