如何使用自定义 ASP.NET 会员提供程序实现帐户锁定

发布于 2024-11-17 13:51:53 字数 517 浏览 2 评论 0原文

我使用的自定义 ASP.NET 成员资格提供程序不支持 MaxInvalidPasswordAttemptsPasswordAttemptWindow 设置。我需要使用这个特定的提供程序,但我的情况阻止我扩展它的功能。

也就是说,“自行实施”帐户锁定的最佳方法是什么?一些初步的想法包括:

  1. 如果用户超过无效登录尝试的最大次数,请将其帐户的“IsApproved”设置设为 FALSE。
  2. 如果用户超过无效登录尝试的最大次数,请将其个人资料中的布尔值(即“IsLocked”)设置为 true。

另外,在实现 PasswordAttemptWindow 功能的同时,跟踪无效尝试次数的推荐方法是什么?我应该在会话、缓存、数据库等中保留一个计数器吗?

The custom ASP.NET membership provider I am using does not support the MaxInvalidPasswordAttempts and PasswordAttemptWindow settings. I am required to use this particular provider and my situation prevents me from extending it's functionality.

That said, what is the best approach for "rolling your own" implementation of account locking? Some initial ideas include:

  1. If a user exceeds the maximum number of invalid login attempts, set their account's "IsApproved" setting to FALSE.
  2. If a user exceeds the maximum number of invalid login attempts, set a Boolean value in their profile (i.e. "IsLocked") to true.

Also, what is the recommended way to keep track of the number of invalid attempts while attaining the PasswordAttemptWindow functionality? Should I persist a counter in Session, Cache, DB, etc..?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

女中豪杰 2024-11-24 13:51:53

您应该像常规提供商一样保留数据库。

此处您可以下载默认会员资格提供商的源代码,这可能会让您了解需要完成的任务。

You should persist on the database, like the regular provider does.

Here you can download the source for the default membership provider, this might give you some insight for what you need to accomplish.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文