Java - 对象的对象访问控制

时间:2015-10-27 15:08:03

标签: java spring

我甚至不知道这个问题标题是否正确 - 如果没有,请原谅。我有这样的问题:

我的网络应用程序只能由登录用户访问。每个用户都表示为Value()实体,保存在数据库中。

还有一些其他实体类:UserAB ...也保存在数据库中。类CA ...的每个对象都可以由任何用户创建。 但是B不应该看到由user1创建的对象。

问题:

如何进行此类访问控制?

我天真的主意:

我可以为每个实体类添加user2属性(在DB表的情况下为列)。在对象创建期间,此属性将获取当前用户ID。到目前为止,对我来说还可以。但是我必须将当前用户添加到每个数据库选择。这在某种程度上是有问题的。

例如,使用Spring JPA而不是:

User

我必须使用:

public interface MessageRepository extends JpaRepository<Message, Long> {
    List<Message> findByReceiveDateBetween(Date from, Date to);
}

我的应用程序是用Java编写的。

如何进行此类访问控制?

1 个答案:

答案 0 :(得分:0)

您肯定需要在数据库级别使用其创建者的ID标记每个实体。