我们有像http://api.ourdomain.com/dashboard/resource-id这样的 Rest 调用 方法:GET;其中 resource-id 是与登录用户绑定的资源的 ID。我们不希望任何用户能够访问其他用户的资源。
因此,要确定该资源是否与当前登录用户相关联,我们必须执行一些查询(Joins)来知道这个具有 resource-id 的资源是否属于登录用户。好吧,这是我们拥有的众多案例之一。我们当然不能制定一种通用的 AOP 方法来决定登录用户是否有权查看请求的资源,因为不同资源的决定逻辑不同。其他解决方案可能是:在每个“资源”数据库表中都有“createdBy”列,以便决定的逻辑非常简单,即只需检查当前登录用户是否 == 资源记录的 createdBy 列。但后者似乎有点古怪。有什么建议,我们如何为此设计解决方案?