对于任何 IT 团队来说,不断被要求重置密码是最让人感到心力交瘁的事情之一。
我们发现处理这个问题的最佳方法是放弃你的哈希算法,并将你的密码以明文形式存储,以便你的用户可以随时检索它们。
哈!我当然是开玩笑的。那是个糟糕的主意。
当你的用户忘记密码时,你仍然需要重置它们。但是,有没有一种方法可以摆脱手动执行这项单调乏味、重复性工作的困扰呢?
PWM 将密码重置的权力交给用户
PWM 是一个开源 (GPLv2) JavaServer Pages 应用程序,它提供了一个网页,用户可以在该网页上提交自己的密码重置请求。如果满足某些条件(您可以配置这些条件),PWM 将向您已连接的任何目录服务发送密码重置指令。

PWM 的一个优点是它非常容易添加到现有网络中。如果您对已经构建的网络基本满意,只是厌倦了手动处理密码请求,那么您可以将 PWM 加入其中。
PWM 可以与任何 LDAP 实现一起使用,并编写为在 Apache Tomcat 上运行。一旦启动并运行,您就可以通过基于浏览器的仪表板对其进行管理。
为什么 PWM 比 Microsoft SSPR 更好
尽管我们的团队更喜欢开源,但我们仍然必须处理 Windows 网络。当然,Microsoft 有自己的密码重置工具,称为自助服务密码重置 (SSPR)。但我更喜欢 PWM,不仅仅是因为我对开源的普遍偏好。我相信 PWM 在我的用例中更好,原因如下:
-
SSPR 具有非常复杂的许可系统。您需要根据您运行的服务器以及它们运行在谁的硬件上来选择不同的产品。这限制了您的灵活性,并且在需要迁移到新架构时会带来额外的麻烦。对于想要准时回家的繁忙管理员来说,获得购买批准会增加额外的官僚程序。PWM 只需在配置好的环境下工作,且无需任何费用。
-
PWM 不仅适用于 Windows。它可以与任何类型的 LDAP 服务器一起使用。因此,如果您不再在某个角色中使用 Windows,您就不需要担心少一个部分。这也意味着,一旦您掌握了它,您的工具包中就多了一样可以在许多不同环境中使用的东西。
-
PWM 易于安装。如果您知道如何将 Linux 安装为虚拟机——而且,让我们面对现实,如果您正在运行网络,您可能知道——那么您已经完成了一大半。
PWM 可以在 Windows 上运行,但我们更喜欢通过在 Linux 虚拟机上运行它来将其包含在 Windows 网络中,例如 Ubuntu Server 16.04。
自动化的风险与回报
密码重置是一个攻击向量,因此请仔细考虑在何处以及如何使用 PWM。自动化密码重置可能意味着攻击者可能只需通过一个未加密的电子邮件连接即可重置密码。
在某种程度上,自动化密码重置会在一定程度上牺牲安全性以换取便利性。因此,这可能不是处理批准大额付款的 C 级主管用户帐户的正确方法。
另一方面,手动重置也不是 100% 安全的——它们可能会被鱼叉式网络钓鱼和社会工程等有针对性的攻击所利用。如果您的团队收到频繁的重置请求并且厌倦了处理它们,则更容易落入这些骗局。您可能会受益于自动化处理大部分低风险请求,以便您可以专注于手动保护高风险帐户;考虑到使用 PWM 可以节省的时间,这是可能的。
与将重置转移给用户相关的某些风险可以通过 PWM 的内置功能来缓解,例如坚持要求用户通过电子邮件或 SMS 验证其密码重置请求。您还可以使 PWM 仅在 内网上访问。

PWM 不存储任何密码,因此少了一个麻烦。但是,它确实将用户秘密问题的答案存储在 MySQL 数据库中,该数据库可以配置为本地存储或单独的服务器上,具体取决于您的偏好。
有很多方法可以使 PWM 看起来和感觉起来像是您团队基础设施中完善的一部分。只需掌握一些 CSS 知识,您就可以为您的企业品牌定制用户界面。还有更多的实现选项,超出您的想象。
总结
PWM 是一个很棒的开源项目,它正在积极开发中,并且拥有一个乐于助人的在线社区。对于必须严格控制预算的中小型企业来说,它是 Microsoft Azure SSPR 解决方案的绝佳替代品,并且可以整洁地融入任何现有的 Active Directory 基础设施。它还可以通过将这项日常任务外包给用户来节省 IT 时间。
我建议每位网络管理员都深入了解一下 PWM 提供的酷炫功能。查看入门资源,如果您有任何问题,请联系社区。
1 条评论