我最近一直在对流行的 Java 安全框架(Spring Security 和 Apache Shiro)进行一些研究。我注意到这两个框架都支持缓存。 Apache Shiro 甚至描述了它的模块:
Caching is a first-tier citizen in Apache Shiro's API to ensure that security operations remain fast and efficient.
我的问题是:
- 在 Ehcache 等中缓存安全信息是否安全?
- 这是一种流行的方法吗?
- 在安全方面我们是否应该考虑效率?
- 为什么要冒险?
最佳答案
当浏览器缓存通过 https 传输的内容时,它会以加密状态存储。 Key 存储在内存中,当浏览器关闭时缓存和 Key 都会被删除。主要威胁是 spy 软件, spy 软件可能仍然可以通过读取浏览器的内存来访问用于加密的 key 。但总比没有好。
服务器端的情况有些不同。攻击者如何访问缓存存储?如果机器受到损害,则没有地方可以存储 key 。我会确保除非网络服务器受到损害,否则无法访问缓存。我认为加密在这种情况下根本没有帮助。
关于java - 缓存安全信息安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9785183/