アプリの一部のサービスメソッドに@PreAuthorize
アノテーションを付けました。これらのアノテーションはhasAuthority
、hasRole
などを使用し、将来的には他の有効な構成が含まれる可能性があります。例:
@PreAuthorize("hasAuthority('Customer.Get')")
public Customer getCustomer(String name);
などなど、すべてのPreAuthorize
アノテーションで使用されているすべての権限Customer.Get
を反映して収集したいと思います。
PreAuthorize pre = (PreAuthorize) m.getAnnotation(PreAuthorize.class);
String expr = pre.value();
私はある種のものを探していました:
List<HasAuthority> h = SpringXYZ.getHasAuthorities(expr);
そして、h.get(0)から「Customer.Get」文字列を取得します...。
これは可能ですか?アプリの初期化中にこの取得を行う必要があるため、その時点で使用可能な認証オブジェクトはありません。
任意の提案をいただければ幸いです。