Add Password Requirements to Membership Provider(向成员资格提供程序添加密码要求)
问题描述
我是需要创建自定义成员资格提供程序,还是有其他方法?
我有一个使用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。
这篇关于向成员资格提供程序添加密码要求的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:向成员资格提供程序添加密码要求


- 良好实践:如何重用 .csproj 和 .sln 文件来为 CI 创建 2022-01-01
- Web Api 中的 Swagger .netcore 3.1,使用 swagger UI 设置日期时间格式 2022-01-01
- 带有服务/守护程序应用程序的 Microsoft Graph CSharp SDK 和 OneDrive for Business - 配额方面返回 null 2022-01-01
- MoreLinq maxBy vs LINQ max + where 2022-01-01
- 输入按键事件处理程序 2022-01-01
- 在哪里可以找到使用中的C#/XML文档注释的好例子? 2022-01-01
- 如何用自己压缩一个 IEnumerable 2022-01-01
- C#MongoDB使用Builders查找派生对象 2022-09-04
- WebMatrix WebSecurity PasswordSalt 2022-01-01
- C# 中多线程网络服务器的模式 2022-01-01