私は、TomcatでJAASを実行する認証/認可を使用するPrimefacesアプリケーションを持っています。ユーザーロールと保護されたフォルダはweb.xmlで定義されています。私の問題は、彼がログインしている間にユーザーロールを変更する必要があるということです。基本的には、ユーザーがボタンをクリックして管理ロールを追加すると、管理者フォルダにページが表示されます。私は解決策を見つけるのに長い時間を探していましたが、成功しませんでした。彼は、このコードによって役割を持っている場合、私は、ログインユーザー名を確認し、確認することができます。Java JSFアプリケーション、JAASを使用してログオンしたユーザーの動的ロール
HttpServletRequest request = (HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest();
request.getUserPrincipal();
request.isUserInRole("admin");
私はこのコードが動作する必要があることを1つの答えを見つけたが、私は唯一のヌル件名を取得:
Subject.getSubject(AccessController.getContext());
です再度ログインする必要なくユーザーの役割を変更することができます。もしそうなら、どうすればいいですか?