【发布时间】:2015-07-27 21:10:02
【问题描述】:
我正在创建一个用户可以创建游戏的应用程序。我在实体 Game 中存储谁是创建游戏的用户,我的意思是,游戏的所有者。实体 Game 与其他实体有一些关系 ONE_TO_ONE (RuleGame) 和 ONE_TO_MANY (PublicZone 和 PrivateZones)。
我想要的是只有游戏的所有者和拥有 ROLE_ADMIN 和 ROLE_STAFF 的用户才能编辑游戏及其关系。
换一种说法,像社交网络一样思考,只有我和管理员可以编辑我的个人资料,但我不能编辑其他用户的个人资料。
当然,我可以在 @Service 和这些实体的控制器的每个“更新”方法中创建自己的逻辑(Game、PublicZone 和 PrivateZones)调用它并检查它,但我想知道是否有更好的方法。
我正在阅读有关审计的信息,例如 Hibernate Envers,但它适用于类似 wiki 的软件,记录添加/更新/删除的人,因此它不符合我的需要。
我正在使用 Spring 4.1.6、Spring Data Jpa 1.8.0、Spring Security 4 和 Hibernate 4.3.8
欢迎提出任何建议!
【问题讨论】:
标签: spring hibernate spring-mvc jpa audit