@Published
@Target(value=METHOD)
@Retention(value=RUNTIME)
@Interceptor(value=nablarch.common.authorization.role.CheckRole.Impl.class)
@Documented
public @interface CheckRole
Interceptor
。
このアノテーションをアクションのメソッドに設定することで、
そのメソッドを実行するために必要なロールをアクセスしてきたユーザが持つかどうかを
チェックできるようになる。
アクセスしてきたユーザの識別子は、ThreadContextのgetUserIdメソッド
で
取得できるものが利用される。
また、ロールの有無の判定はRoleEvaluator
に委譲して行われる。
このRoleEvaluator
のインスタンスは、システムリポジトリから"roleEvaluator"
という名前で
取得したものを使用する。
判定の結果ロールを持たないと判断された場合は、Forbidden
がスローされる。