2

アプリケーションにセキュリティを実装する際に問題があります... カスタム認証があり、@PreAuthorize を使用してユーザー認証を処理しています。これはうまくいきます。ここで、ユーザーごとにアクセス制御を実装したいと考えています。つまり、私のアプリケーションでは、'Admin' と 'John' の 2 人のユーザーがメソッドを呼び出すことができます。

@RequestMapping(value = "/load/{id}", method = RequestMethod.GET)
@ResponseBody
public StudentYearViewModel load(@PathVariable long id) {
    return ModelMapper.map(iStudentService.loadByEntityId(id), StudentViewModel.class);
}

「管理者」はすべての生徒インスタンスに対してこのメ​​ソッドを使用できますが、「ジョン」は同級生しか見ることができません! すべてのユーザーがこのメソッドを呼び出すことができます (@PreAuthorize は適していません) が、アクセスは制限されています。今、一般的な方法がありますか?

ACL は最良の方法ですか?(最良の例はありますか?)

HDIVフレームワークは私の問題を解決するのに役立ちますか??

最善の解決策は何ですか?

4

2 に答える 2