我通常以这种方式在Web.config文件中存储单个凭据:
Hub
我完全了解TOP NOTCH的安全性和密码强度:)。
然后在我的Custom AuthProvider类中,我通常(旧)方式验证用户:
<authentication mode="Forms">
<forms loginUrl="~/Login" timeout="2880">
<credentials passwordFormat="Clear">
<user name="admin" password="123" />
</credentials>
</forms>
</authentication>
然而,它工作正常,但该方法已被弃用(过时)。 所以我想用新的方式(我相信这是正确的):
bool result = FormsAuthentication.Authenticate(username, password);
但我得到例外:
发生与网络相关或特定于实例的错误 建立与SQL Server的连接。找不到服务器或 无法访问。验证实例名称是否正确 SQL Server配置为允许远程连接。 (提供者:SQL 网络接口,错误:26 - 查找服务器/实例时出错 指定)
显然,访问数据库确实没有问题,因为我正在显示&#34;未经身份验证的&#34;它的内容完美无缺。
所以我的问题是......在不使用弃用方法的情况下,在Web.config中保存凭据的新解决方案是什么?我认为其他人可能会遇到同样的问题,我很想知道为什么会发生这种情况......
提前谢谢!
答案 0 :(得分:0)
在MVC 5中 FormsAuthentication.Authenticate 的api中没有等效词 如果您使用 Membership.ValidateUser ,则需要在webconfig中定义成员资格,通常是为用户提供角色的服务器,如活动目录服务器。