3

现成的 ASP.net Membership Provider 和表似乎不符合 PCI。是否有人已经为 ASP.net 实施了 PCI-Compliant Membership Provider?特别是,我正在查看第 8.5 节的要求:

  • 8.5.2:是否在对通过非面对面方式提出的用户请求执行密码重置之前验证用户身份?

    为此,我正在考虑一封带有重置令牌的电子邮件,有效期不超过 X 小时。默认提供程序只是生成一个随机值并通过电子邮件发送(尽管我们可以启用安全问题/答案来满足此要求)。

  • 8.5.5:超过 90 天的非活动用户帐户是否被删除或禁用?

    默认提供程序不支持此操作。在允许登录尝试继续之前,我们可以绑定到 OnLoggingIn 进行一些检查。

  • 8.5.9:使用密码是否至少每 90 天更改一次?

    应该能够检查这个 OnLoggedIn。如果上次密码日期 > 90,则重定向到密码更改表单而不是所需内容。

  • 8.5.12: 个人必须提交与他或她最近使用的四个密码中的任何一个不同的新密码吗?

    我不相信默认提供者的成员资格表支持这一点。我们可以添加一个密码历史表,并在每次有人创建新密码时添加一个条目。然后可以在 ChangePassword 控件的 OnChangingPassword 事件中检查这些内容。

我自己完全有能力做到这一点,但如果已经有一些东西,我想利用它。

4

1 回答 1

0

找不到任何开箱即用的解决方案,因此将遵循 James 的建议并编写我自己的解决方案。

于 2012-02-20T20:18:13.220 回答