java - 在 Spring REST 响应中隐藏/屏蔽 secret 数据

标签 java spring rest spring-data-rest

我正在使用 Spring REST+Spring Security 创建休息服务。在少数服务中,我需要隐藏/屏蔽数据作为响应。

例如,我不希望任何人看到用户的密码。因此密码字段应该为空或者不应出现在响应中。我在请求和列表响应中使用相同的 DTO。这就是为什么无法从 DTO 中删除属性的原因。

同样,帐号应屏蔽为xxx-xxx-xxx-123

Spring 有什么办法可以实现这一点吗?或者当返回 ResponseEntity 时可以应用于所有实体/ Controller 的任何通用解决方案(例如拦截器)?

最佳答案

在这种情况下,您可以使用@JsonIgnore(如已经建议的那样)或投影。如果您需要对响应进行更多控制,您也可以实现自己的序列化器。

关于java - 在 Spring REST 响应中隐藏/屏蔽 secret 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27872811/

相关文章:

java - 将 System.out 重定向到页面

java - MD5 作为 Apache Camel 中的幂等 key

Java Hibernate 错误 - 类未映射

java - JSON:InvalidFormatException:无法从字符串值构造 int 实例

java - 处理/Java ArrayList和LinkedList异常

Java 文件替换行

java - Spring Boot 应用程序在使用 Java 10 的 Docker 中启动时卡住

java - spring maven install or clean错误,为什么?

java - 404 错误 : Resource not available jersey tomcat

javascript - 如何在 FOSJSRoutingBundle 上生成不带问号的路由