2

サービス層(任意の場所)でプリンシパルSecurityContextHolderがnullである場合、ユーザーをログインページにリダイレクトする方法は? インターセプターまたはフィルターである必要があると思います。

4

1 に答える 1

1

要求がサービス レイヤーに入るまでに、セキュリティ コンテキストは、セキュリティ フィルター チェーンで構成されたフィルターの 1 つによって既に取り込まれているはずです。値が入力されていない場合は、セキュリティ フィルター チェーンが適切に構成されていないか、要求 URL が構成済みフィルター チェーンのいずれによっても保護されていないことを意味します。patternセキュリティ設定の要素に属性が存在するかどうか、httpおよびリクエスト URL と一致するかどうかを確認してください。

認証されていないリクエストの処理を担当するフィルタはExceptionTranslationFilter、構成された を呼び出してAuthenticationEntryPoint認証プロセスを開始します。デフォルトの名前空間構成 ( ) は、ユーザーをログイン ページにリダイレクトする を使用し<security:http auto-config="true"...てこのフィルターを設定します。LoginUrlAuthenticationEntryPoint

于 2013-02-12T07:29:49.110 に答える