【问题标题】:How can you test if an AD password will meet configured complexity requirements?如何测试 AD 密码是否满足配置的复杂性要求?
【发布时间】:2010-07-12 00:08:39
【问题描述】:

在 net 3.5 csharp 应用程序中,我需要提前知道 AD 密码是否满足配置的复杂性要求。
你怎么能这样做?

【问题讨论】:

    标签: c# active-directory passwords


    【解决方案1】:

    如果您想从 AD 获取要求,那么@Leniel Macaferi 的答案中的链接应该会有所帮助。

    如果您已经知道预期的要求并且您的应用接受了作为字符串的建议密码,您可以自己进行测试。一些常见的要求和计算方法包括:

    • 最小长度:很容易检查字符串的长度
    • 复杂性:常见要求是“此列表中至少三个:小写、大写、数字、字符”,因此您要创建一个计数器,然后使用正则表达式来测试每个条件是否匹配并递增每个人的柜台。因此,例如,您的正则表达式将类似于[a-z][A-Z][0-9][~!@#$%^&*()-_\+=<,>\.\?\/];对于每一个匹配,将 1 添加到您的计数器。如果最后的计数小于您的要求,则密码失败。 (如果您为他们使用和未使用的类别保留布尔变量,您甚至可以对用户特别好,并建议他们错过的类别之一。)
    • 简单猜测:您可以创建自己的相等性测试,以确保用户没有选择与其用户名或其他禁止密码相匹配的密码。
    • 最近使用的密码:嗯,这个不太容易......如果没有 Active Directory 的帮助,您将无法真正弄清楚。

    【讨论】:

      【解决方案2】:

      【讨论】:

      • en.csharp-online.et 的两个链接似乎已损坏。
      • 最后两个链接不起作用,并且链接到场外解决方案不是 SO 的正确答案(我相信您现在已经知道 ;))。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      • 2020-10-11
      • 2021-08-30
      • 2014-08-17
      相关资源
      最近更新 更多