gpt4 book ai didi

java - Tomcat7 管理器中的空 session

转载 作者:太空宇宙 更新时间:2023-11-04 10:09:34 25 4
gpt4 key购买 nike

在 tomcat session 管理器中,有一些没有名称(猜测的用户名)的空 session ,我想以比正常 session 更小的超时删除此 session ,我如何在 SessionListener 类中执行此操作?

最佳答案

据我所知。

org.apache.catalina.manager.util.SessionUtils#guessUserFromSession将实现 org.apache.catalina.Session 的对象作为参数,例如org.apache.catalina.session.StandardSession .

org.apache.catalina.Session#guessUserFromSession称呼 org.apache.catalina.Session#getPrincipal在此对象上,它返回一个实现 java.security.Principal 的对象.

该接口(interface)有java.security.Principal#getName java.security.Principal#toString用于“猜测”绑定(bind)到 session 的用户名的方法。

如果没有执行java.security.Principal被返回() org.apache.catalina.Session称呼 org.apache.catalina.Session#getAttribute使用以下语法的以下属性:LoginUseruserNameUserNameUtilisateur,然后小写,然后大写,直到获得值。

如果这些属性是 null , org.apache.catalina.Session迭代 org.apache.catalina.Session#getAttributeNames查找实现 java.security.Principal 的对象或者继承自 javax.security.auth.Subject调用这些对象的增益方法 #getName#toString “猜测”绑定(bind)到此 session 的用户名。

您可以执行相同的过程来配置 session 超时。

关于java - Tomcat7 管理器中的空 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52520043/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com