首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >除了无效()之外,从会话中删除用户凭据是多余的吗?

除了无效()之外,从会话中删除用户凭据是多余的吗?
EN

Stack Overflow用户
提问于 2016-11-06 08:34:59
回答 1查看 50关注 0票数 1

我正在研究一个遗留代码库(至少有十年的历史),它具有相当于JSP Model2体系结构的特性(基本上是Servlets和JSP页面)。

我注意到下面这样的代码:

代码语言:javascript
复制
session.removeAttribute("loginBean");
session.invalidate();

从会话中删除用户凭据是否有任何好处。仅仅使用invalidate还不够吗?invalidate documentation在这个问题上似乎很清楚。

EN

回答 1

Stack Overflow用户

发布于 2016-11-06 11:59:58

从会话中删除用户凭据是否有任何好处。仅仅失效还不够吗?

是的,这有一个好处,最佳实践是在从安全角度使HttpSession无效之前删除敏感信息,如usercredentials对象,如下所述:

HttpSession对象上调用invalidate()时,J2EE容器将在内部触发HttpSessionListener sessionDestroyed(HttpSessionEvent se)方法。因此,如果您不从会话中remove usercreadentials对象,您仍然可以在sessionDestroyed方法中检索它。

因此,最好的做法是从HttpSession/Cache/**etc.. 中删除敏感信息一旦我们知道不再需要数据,** object usercredentials**) (如)将不再可达,这将减少误用的范围。**

您可以查看指南2-2下面引用的Java安全编码指南

某些信息非常敏感,例如社会安全号码(SSN)和密码。此信息不应保留超过必要的时间,也不应保存在可能会被看到的位置,即使是管理员也不应如此。

你可以看看here

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40444816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档