繁体   English   中英

如何跟踪通过天蓝色广告通过用户身份验证的次数

[英]How to track number of times user has been authenticated via azure ad

我正在使用Azure Ad和ADAL.js进行我的应用程序身份验证,我需要跟踪用户成功访问该应用程序的次数。

  • 如果用户在同一会话中访问该应用程序,则应将其计为1次访问。

  • 如果用户在不同的会话中浏览该应用程序,则应将其计为第二次访问。

我可以使用ADAL.js中的任何事件吗?

或者我正在考虑将session-state(adal.session.state)值存储在数据库中,如果用户会话已更改,我监视的值正在更改。然后我将针对每次访问的用户比较此值,然后更改该值我将增加访问次数,还将更新新的会话状态值。

我在数据库访问中创建了两个额外的列,SessionStateValue值

因为我正在获取adal.js存储在会话存储中的会话状态值,所以每当用户成功登录系统时,SessionStateValue db列中都没有值(这意味着用户是第一次登录),那么我将会话状态值存储在db中,并将访问次数增加1。

当用户在同一会话中使用该应用程序时(例如,打开了一个新的浏览器选项卡),由于SessionStateValue值存在于db中并且与浏览器的Session状态值匹配,因此不会增加访问次数。

如果用户在其他会话中登录(关闭并重新打开浏览器或使用其他浏览器),则会话状态值将更改并附加到db中的SessionStateValue中,并且访问计数增加1。

只要访问次数小于3,就会使用此逻辑。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM