mag*_*omj 2 wso2 wso2is wso2-das
我们正在使用WSO2进行身份验证(SAML / SSO)。
我不知道如何判断用户是否已经登录(以防止并发登录)。其他SO问题表明,无论是否使用WSO2 IS Analytics都可以知道这一点。我不希望也不必运行WSO2 IS Analytics(这在这里已提及,但从未明确。此外,我可以看到在登录期间填充并引用了IDN_AUTH_SESSION_STORE表,但这使用的是SESSION_ID(由commonAuth cookie)。
因此,我正在寻找这个问题的直接答案:在Auth流程中,我们如何确定给定的用户是否已经登录?
小智 5
如果不使用分析功能,则WSO2 Identity Server中不支持开箱即用地查询用户登录的用户会话。让我解释一下原因。
当用户通过WSO2 Identity Server进行身份验证时,将创建一个会话。这些会话根据WSO2实现中的commonAuthId cookie存储为会话上下文对象。这些会话对象中包含有关已登录用户的信息。因此,如果要获取特定用户的会话,则必须查询所有活动的会话,并逐一匹配该用户以遍历所有活动的会话。
或者,您可以编写一个自定义数据发布器模块,该模块将针对每个用户的会话数据持久化,然后可以使用这些数据来防止并发登录。我有一篇针对该确切用例的博客文章。
希望这可以帮助。
| 归档时间: |
|
| 查看次数: |
264 次 |
| 最近记录: |