JPAアプリには、アプリがするシナリオがあります
指定されたユーザーが引き出しを許可されているすべてのアカウントを一覧表示する
Account エンティティと、各ユーザーが各アカウントに対して持っている承認を一覧表示する多対多のテーブルがあります。上記のシナリオを実装するために、アプリは現在、2 つのテーブルを内部結合するだけです。これは非常に迅速です。
ここで、明示的な承認レイヤー (apache shiro / spring security / other に基づく) を追加して、承認関連のロジックを残りのコードから隔離することを計画していましたが、...
データベースには約 10,000 のアカウントがあり、「平均的な」ユーザーは、そのすべてで「入金」、半分で「表示」、少数で「出金」が許可されています。
このシナリオを効率的に実装できるセキュリティ フレームワークはありますか?
つまり、それらのいずれかが「select a from Account a」(または同等の SQL) タイプの JPA クエリを「装飾」して、データベースからすべてのユーザー許可をロードせずにアカウントのリストを取得できます。 、すべてのアカウントを取得する必要はありませんか?)