0

私のアプリケーションは siteminder 認証を使用しています。siteminder は、ユーザー名、ユーザー ID などのユーザーの詳細を http 要求ヘッダーに追加し、アプリケーションにリダイレクトします。これらのユーザーの詳細をヘッダーから Bean に保存し、ビジネス ロジックでアクセスする必要があります。いくつか質問があります。

  1. UserDetailsBean にはどのようなスコープが推奨されますか? セッションまたはリクエスト?

  2. リクエストを傍受し、ヘッダーからユーザー情報を抽出できる場所は? フィルター内でそれを行うことはできますか? または、 UserDetailsBean (セッション Bean) コンストラクター内で実行できますか?

次のようなことができますか

public UserBean() {
    FacesContext context = FacesContext.getCurrentInstance();

    Map<String, String> requestHeaderMap = context.getExternalContext().getRequestHeaderMap();

    String userId = requestHeaderMap.get("sm_userID");

        public String getUserId() {
    return userId;
}
public void setUserId(String userId) {
    logger.info("[Bean - User is] "+userId);
    this.userId = userId;
}
        }

アプリケーション全体で UserBean.getUserId にアクセスしますか?

4

0 に答える 0