将机密数据(例如密码)隐藏到日志中的最佳方法是什么?
我想记录POST请求的主体,它被发送到我的Servlet。但是记录密码并不是一个好主意。如何屏蔽密码?如果正则表达式是最好的主意,你能举一些例子吗?
// Example:
password=123456asedqwe -> password=***
bla&password=qweqweqwe -> bla&password=***
password=qweqweqwe&qwe=qwe -> password=***&qwe=qwe
您可以尝试以下简单的正则表达式替换。假设密码位于password=
和下一个&
之间。
String s = "password=qweqweqwe&qwe=qwe ";
String maskedPassword = s.replaceAll("password=[^&]*", "password=***");
System.out.println(maskedPassword);
打印:
password=***&qwe=qwe