假设我有两个具有User
关系的实体Article
和One-to-Many
。
现在,用户theCoder
创建了一篇文章-“ 如何提出问题?”。文章已使用外键Article
保存在theCoder
表中。
现在,另一个用户theHacker
从某处登录该应用程序,并阅读了“ 如何提出问题?”一文。现在,他/她尝试对文章执行delete
/ update
操作,不允许执行这些操作。只有文章的所有者才能delete
/ update
文章。
我应该如何实现?
一种方法是检查principle
(已登录用户的用户名),然后比较创建该文章的用户。如果它们匹配,请删除/更新帖子,否则抛出403 unauthorized
。
但是要做很多。 Spring安全性提供了一些方便的东西吗?
我正在寻找它,并且具有ACL安全性,但是我不知道它是否是我正在使用的那个。网上也找不到一些好的文章/博客/教程。
答案 0 :(得分:0)
我认为您提到的方式将是您业务环境中的最佳方式。 ACL比您的方法还要做的工作更多。但是,如果您想尝试,我认为它将为您提供帮助。 article about spring-security-acl