我必须为我当前的ASP .Net项目创建一个自定义成员资格提供程序,以便适应我们的数据库架构,并且在配置它时如果他们的密码错误三次就会锁定用户时出现问题,这是由标准供应商.
这是我需要自己实现的东西,还是本来应该得到支持?
我没有专门处理它的代码(并且没有任何接口成员似乎专门处理它),但如果我需要自己实现它,我该如何通知用户他们被锁定?我需要在ValidateUser中引发某种异常吗?
解
惭愧我无法标记两个答案,Dave R提供的链接深入了解了会员的工作方式,Zhaph指出的是我最终做的事情,处理自定义会员提供商中的锁定逻辑.
然后,我使用Login控件的LoginError事件处理错误情况,并在那里检查以查看用户是否被锁定以显示相应的错误消息.
Scott Mitchell在ASP.NET站点上编写了一系列优秀的教程.此链接包含有关创建自定义提供程序的信息并讨论锁定逻辑:
http://www.asp.net/LEARN/security/tutorial-06-cs.aspx
还没有内置方法来解锁帐户(例如,如果您使用类似于SqlMembershipProvider的东西,则必须通过数据库工具执行此操作).Scott还撰写了一篇关于创建用于管理此UI的UI的文章,您可以在此处找到:
http://www.asp.net/LEARN/security/tutorial-14-vb.aspx
我实际上建议阅读整个系列.斯科特是一位优秀的传播者.
我希望这有帮助.