0
假设,在我的系统中,用户想要更改他的密码。他发送PUT
请求,然后请求UserRepository.save()
。如果他侵入请求,他可能会设置[user].admin_rights=1
或类似的。如何使用Spring JPA保存防止安全风险?
现在,我大概可以添加@Column(updatable=false)
到各个领域:
@Entity public class User {
@Column(updatable=false) private Boolean admin_rights;
// ....
,但管理员可能需要更新此字段中的一个一天!
我是否需要为此编写自定义查询,指定要更新哪些列?或者有没有办法在User
实体内解决这个权限问题?
检查弹簧安全性,特别是可能使用'@ PreAuthorize'截取。 – CollinD