如果在Java中处理敏感数据的最佳做法是使用字符数组,为什么Spring Security中的大多数方法都使用String或CharSequence?例如,加密器上的方法采用CharSequence。实际上,查看这些方法的源代码,它们实际上最终将CharSequence转换为String。由于那个项目的人在这些事情上的生命经历比我将来的更多,我觉得我必须遗漏一些东西。有没有人对如何将敏感数据传递给这些方法有任何见解?
答案 0 :(得分:5)
你真的无法减少密码的生命周期 Servlet容器,因为HttpServletRequest返回HTTP 参数为String。因此Spring Security可以采取所有措施 在世界上减少密码的生命周期,但它不会 因为字符串已经存在而有所作为。
-Rob Winch(Spring Security)