c# - 是否可以向 FormsAuthenticationTicket 到期添加回调?
问题描述
FormsAuthenticationTicket 按预期工作。我将它设置为“现在 + 60 秒”,在它过期后,我的下一个操作会将我重定向到登录页面。尽管我必须在票证到期后立即重置许可证。有什么办法可以做到这一点?我找不到任何事件处理程序来附加此类功能。我也对不同的方法持开放态度。我的目标是在特定时间间隔后注销用户并调用释放许可证的方法。
解决方案
我能想到的最简单的实现是使用 global.asa.cs 或 global.asa.vb,具体取决于您的语言。您可能需要从带有唯一许可证标识符的票证中存储一个单独的 cookie,以便在调用session_end方法时,您可以从浏览器中获取 cookie 并从该会话中撤销许可证。如果您不使用 cookie,可以存储一个数据库表活动用户 ID 和许可证密钥,并且每次调用session_end时,您可以查看用户是否仍然登录,如果没有,则撤销许可证。
见方法:
Session_Start:当新用户访问应用程序网站时触发。Session_Start 事件在用户会话第一次启动时触发。这通常包含用于会话初始化的逻辑代码。
Session_End:当用户的会话超时、结束或离开应用程序网站时触发。
推荐阅读
- sentry - 哪个哨兵版本剂量支持网络生命体征监测?
- regex - REGEX - 在字符串之间查找文本 - 第一个可选,但在第一个匹配之前只有第二个
- r - poLCA R 缺失数据处理
- kentico - 一个不同的源子框架试图创建一个 JavaScript 对话框
- python - Kmeans 聚类非数值列
- python - 芹菜 crontab 每天
- angular - Angular 中的单元测试:如何测试 get 请求中的错误以获得 100% 的覆盖率
- azure-sql-database - 嗨,我们可以使用自动电源将大 XML 文件存储到 azure sql db 中吗?
- nestjs - 启动嵌套应用程序 typeorm 时出错
- javascript - 如何告诉 tyescript isNil lodash 函数正在检查空值