【问题标题】:Making a software lock for a web project为 Web 项目制作软件锁
【发布时间】:2019-05-06 14:22:35
【问题描述】:

如何在 asp.net core(aspnetboilerplate) 项目上创建软件锁? 我想知道我的项目在 Internet 上有多少活动版本? 我可以禁用其中的一些。

【问题讨论】:

  • 没人知道吗?

标签: aspnetboilerplate asp.net-core-2.2


【解决方案1】:

提供实际代码示例不是一项简单的任务,但在高层次上,您可以通过跟踪 DB 中的 IP 会话来实现这一点。如果您只想完全只允许一定数量的活动会话,那么您只需检查 IP 会话数据库以查看您是否已达到配额,然后根据该检查允许或拒绝下一个会话.要将其扩展到允许超级管理员终止会话,您只需检查用户在数据库中是否有记录,这意味着存在有效会话,然后您将删除该记录以“终止”会话。

如果您希望每个用户只允许 1 个会话,则在登录时,保存用户当前 IP 地址及其 UserId 的记录。为此覆盖或创建新记录,然后在定期的用户会话 isAuthenticated 检查中,您将验证用户当前的 Ip 是否与表中的记录匹配。如果匹配,它将是登录的用户,如果不匹配,则另一个 IP 地址正在使用该登录,您将终止他们的会话。

【讨论】:

  • 没人知道吗?
  • 我在上面提供了一个“想法”
猜你喜欢
  • 1970-01-01
  • 2012-02-27
  • 2015-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-29
  • 1970-01-01
相关资源
最近更新 更多