はあなたがコレクションをフィルタリングするために春のセキュリティを使用したい@ManyToOne
関係で結ば@RepositoryRestResource
として公開され、2つのエンティティEntity
とOtherEntity
、(Entity
はOtherEntities
いくつかを有していてもよい)春データ休憩 - 春のセキュリティと協会のリソースをフィルタリング
を考えてみましょうリポジトリのIterable<Entity> findAll()
機能をオーバーライドします。
@RepositoryRestResource
@Repository
public interface EntityRepository extends CrudRepository<Entity, Long> {
@Override
@PostFilter("hasPermission(filterObject, 'READ')")
Iterable<Entity> findAll();
}
GET /api/v1/entities
、またはGET /api/v1/otherEntities
を呼び出し、それに応じて許可を得てフィルタリングされた結果を取得します。
しかし、関連付けリソースGET /api/v1/entities/:id/otherEntities
を呼び出すとき、取り出されたOtherEntity
要素のリストはフィルタリングされません。
関連リソースもフィルタリングされるように、どのリポジトリ機能をオーバーライドする必要がありますか?
これを達成する別の方法がありますか?
私は私がどこかでそれについて読んで知っていた、チケットの参照をありがとうございました、それをこの時間をブックマークする:) は、あなたの答えを受け入れるだろう回ってくる。 –