【问题标题】:Is it safe to cache security information?缓存安全信息是否安全?
【发布时间】:2012-04-04 19:47:21
【问题描述】:

我最近一直在研究流行的 Java 安全框架(Spring Security 和 Apache Shiro)。我注意到这两个框架都支持缓存。 Apache Shiro 甚至描述了它的模块:

缓存是 Apache Shiro API 中的第一层公民,以确保 安全操作仍然快速高效。

我的问题是:

  • 在例如 Ehcache 中缓存安全信息是否安全?
  • 这是一种流行的方法吗?
  • 在安全方面我们是否应该考虑效率?
  • 为什么要冒险?

【问题讨论】:

    标签: java security caching spring-security shiro


    【解决方案1】:

    当浏览器缓存通过 https 传输的内容时,它会以加密状态存储。 Key 存储在内存中,当浏览器关闭时缓存和 key 会被删除。主要威胁是间谍软件,间谍软件可能仍然可以通过读取浏览器的内存来访问用于加密的密钥。但总比没有好。

    服务器端的情况有些不同。攻击者应该如何访问缓存存储?如果机器受到攻击,则没有地方可以存储密钥。我会确保缓存不能被访问,除非网络服务器被破坏。我认为加密在这种情况下根本没有帮助。

    【讨论】:

    • 我的问题是关于服务器端的,因为我提到了 Java 安全框架。
    • @Maciej Ziarko ...这已经被覆盖了。我以浏览器为例。
    【解决方案2】:

    如果你把所有的缓存在内存中,我认为它是安全的。问题是当 ehcache 将数据存储到磁盘并且有人也可以访问机器时。

    在生产中没有人可以访问服务器。 (只有管理员/部署者等。但他们可以直接访问数据库、应用程序服务器、日志和其他(他们可以调试应用程序:))。但是那个人都是值得信赖的)

    如果您在服务器端缓存 - 就这样做。

    【讨论】:

      猜你喜欢
      • 2012-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-05
      • 1970-01-01
      • 2015-07-05
      • 2012-06-19
      相关资源
      最近更新 更多