加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式验证Active Directory默认密码复杂性

发布时间:2020-12-13 21:53:05 所属栏目:百科 来源:网络整理
导读:我有一个密码列表,我需要检查并确定它们是否符合AD的默认3 of 4规则. 规则包含以下4项要求中的3项: 小写字符(a-z) 大写字符(A-Z) 数字(0-9) 特殊字符(!@#$%^ *()_ =) 我还在学习正则表达式.我知道如何只选择符合任何一个字符的情况,但我不知道如何做到4个
我有一个密码列表,我需要检查并确定它们是否符合AD的默认3 of 4规则.

规则包含以下4项要求中的3项:
小写字符(a-z)
大写字符(A-Z)
数字(0-9)
特殊字符(!@#$%^& *()_ =)

我还在学习正则表达式.我知道如何只选择符合任何一个字符的情况,但我不知道如何做到4个中的3个.

作为旁注,AD复杂性还有两个重要的细微之处(但不在原始问题的范围之内).

它实际上是3的5.第五个是Unicode字符.很高兴用这个更新正则表达式.

另一种是你不能在密码中使用sAMAccountName值(不区分大小写),也不能将displayName值拆分为以空格,逗号,短划线,下划线,磅,管道等标记分割的标记(3个字符和3个字符)更长)不能在密码中整体,不区分大小写.

如果你真的想要一个大的正则表达式,它将是这样的:
(?=^.{8,255}$)((?=.*d)(?=.*[A-Z])(?=.*[a-z])|(?=.*d)(?=.*[^A-Za-z0-9])(?=.*[a-z])|(?=.*[^A-Za-z0-9])(?=.*[A-Z])(?=.*[a-z])|(?=.*d)(?=.*[A-Z])(?=.*[^A-Za-z0-9]))^.*

请注意,它还强制密码长度介于8到255个字符之间.您可以更改第一部分中的“{8,255}”部分以调整长度要求.值得注意的是,这在标准的ASP.NET RegularExpressionValidator控件中对我有用.

比赛:“Passw0rd”“passW @ rd”“1B2a345 @#$%”

不匹配:“123123123”“密码”“asdf& amp;”

Source(Matthew Hazzard通过RegExLib.com)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读