Класс Dog
использует частное поле owner
держать владелец имя пользователя хранится в классе User
(который реализует UserDetails
):Ограничить документы, возвращенные пружинных данными-отдых
@Document
public class Dog {
@Id
private ObjectId id;
private String owner;
}
@Document
public class User implements UserDetails {
@Id
private ObjectId id;
private String username;
}
Этих документы сохранялись с помощью spring-data-mongodb
и с использованием spring-data-rest
. Пользователь аутентифицируется с использованием Spring Security, поэтому он доступен как @AuthenticationPrincipal
.
Просим, чтобы REST мог получить доступ только к собаке, которой владеет пользователь. Можно ли настроить подстановку spring-data-rest для возврата только подмножества документов из коллекции dogs
, те, у которых поле «владелец» совпадает с именем пользователя в экземпляре User
, возвращенном принципалом аутентификации?