向成员资格提供程序添加密码要求 [英] Add Password Requirements to Membership Provider

查看:235
本文介绍了向成员资格提供程序添加密码要求的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是需要创建自定义成员资格提供程序,还是有其他方法?

我有一个使用ASP.NET窗体身份验证和Microsoft SQL成员资格提供程序的项目。网站已经完成了。我在任何地方都使用这个供应商。(注册、登录、忘记密码等...)

到目前为止,我的网站用户还不需要复杂的密码。用户的密码实际上只是PIN。在过去,用户可以选择任何密码。我对这个网站几乎没有任何限制,因为这些数据都不是私人或个人的。

但是,我收到了新的要求。

以下是新密码要求:

  • 密码长度必须至少为8个字符。
  • 密码必须使用以下4种字符类型中的3种创建:
    • 大写
    • 小写
    • 数字
    • 标点符号
  • 请勿在密码中使用您的姓名或用户ID。
  • 以后不要再使用旧密码。
  • 密码必须至少每隔60天更改一次。
  • 密码不能包含您的用户ID或全名的任何部分。
  • 保留密码历史记录将禁止使用最后24个密码。
  • 用户在任何6天内只能更改密码一次。


我意识到我将不得不修改以下所有页面:注册,登录,忘记密码等…幸运的是,我很久以前就不再使用默认控件了。

感谢您的想法。

我的第一个想法是我需要编写一个Custom成员提供程序。 我不知道如何让标准提供商来完成大部分工作。我可以写代码来做。

  • 我是否要修改aspnet_Membership表?
  • 我是否应该添加我自己的表aspnet_thing?
  • 是否可以将用户配置文件表用于此问题?
  • 我是否需要自己的Membership User类?


谢谢。

推荐答案

您需要侦听ValidatingPassword事件。

有关如何执行此操作的示例代码,请参阅ASP.NET Membership ChangePassword control - Need to check for previous password

这篇关于向成员资格提供程序添加密码要求的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆