Używam Spring Security, JPA i CrudRepository. Chciałbym, żeby każdy użytkownik miał dostęp tylko do swoich obiektów.
Tak wygląda użytkownik:
public class UserEntity {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
}
Mój plan: do każdej encji dodać informację, kto jest jej właścicielem: userId, który odnosi się do UserEntity.id, a potem w repozytoriach tylko:
@PostFilter("filterObject.userId == principal.userId")
- chcę mieć klucz obcy
userIdw każdej encji, żeby zapobiegać sytuacjom typu encja bez właściciela - nie chcę mapować obiektu, bo to by wymagało operowania na obiekcie
UserEntity, a potrzebuję tylkoUserEntity.id. Przeszukałem internety i wygląda na to, że mapowanie samego id nie jest możliwe. Jest na to jakiś sposób?