gpt4 book ai didi

java - 为什么 ShiroWebModule 默认为非验证 SessionManager?

转载 作者:行者123 更新时间:2023-12-01 15:06:42 26 4
gpt4 key购买 nike

ServletContainerSessionManager 不是 ValidatingSessionManager;它是否遵循底层容器来处理孤立清理?这似乎不对。

我认为切换到 DefaultWebSessionManager 因为它是一个全功能的实现,不会有任何风险或缺点吗?有什么原因不是该模块的默认设置吗?

最佳答案

ServletContainerSessionManager 确实遵循容器的所有 session 相关功能。 ShiroWebModule 默认这样做只是因为这是 DefaultWebSecurityManager 中已经预期的默认值 - 目的是无论您使用基本的 ini 设置、spring、还是保持默认值相同。或吉斯。

话虽如此,如果您需要管理 Shiro 中的 session ,则没有理由不切换到 DefaultWebSessionManager。事实上,这就是 bindSessionManager 方法存在的原因。

要进行切换,只需覆盖 bindSessionManager:

@Override
protected void bindSessionManager(AnnotatedBindingBuilder<SessionManager> bind) {
bind.to(DefaultWebSessionManager.class).asEagerSingleton();
}

关于java - 为什么 ShiroWebModule 默认为非验证 SessionManager?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12866956/

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