我正在使用ASP.NET 3.5 SP1并试图让会员使用ActiveDirectoryMembershipProvider。似乎我们的密码在我们的AD中以纯文本形式存储。似乎没有办法告诉AD提供程序使用散列密码以外的任何其他方式进行身份验证。
Microsoft documentation表示System.Web的v2.0.0.0中支持passwordFormat属性。理想情况下,我应该能够将其设置为“清除”。我没有对它进行过测试,但相信这有效,并且已经在.NET 4.0中看到了样本(由于项目限制,我无法使用此版本的框架)。
我在设置配置时遇到异常,如下所示。
<add name="ActiveDirectoryMembershipProvider"
type="System.Web.Security.ActiveDirectoryMembershipProvider,
System.Web, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="ADService"
attributeMapUsername="sAMAccountName"
enablePasswordReset="false"
passwordFormat="Clear"
/>
任何人都对如何使用AD中的现有用户帐户进行身份验证有任何想法?
更新 意识到拥有attributeMapUsername就是所需要的。不需要指定域,并且不需要passwordFormat。