2017-11-14 11 views
0

は春の雲のOAuth2認証サーバからの応答を拒否:春のセキュリティのOAuth2サーバインターセプト不正アクセス拒否私はアクセスの下に傍受したい

<oauth> 
<error_description> 
Full authentication is required to access this resource 
</error_description> 
<error>unauthorized</error> 
</oauth> 

I'likeが例外をインターセプトし、いくつかのカスタムリダイレクトを行うのか、カスタムページを表示します。

これを行う方法に関するヒントはありますか?

ありがとうございます。

答えて

0

最後ResourceServerConfigurerAdapterを拡張することによってそれを解決し、この追加コードを設定(HTTP)メソッドをオーバーライド:

... 
http.exceptionHandling().authenticationEntryPoint(unauthorizedEntryPoint()); 
... 

@Bean 
    public AuthenticationEntryPoint unauthorizedEntryPoint() { 

     return (request, response, authException) -> { 
      LOGGER.info("\n!!!!!!!! unauthorized: {} !!!!!!!!!!!!", authException.getMessage()); 
      String uri = request.getContextPath() + "/login"; 
      if(loadBalancerClient!=null && loadBalancerClient.choose("API-GATEWAY") != null) { 
       uri = loadBalancerClient.choose("API-GATEWAY").getUri().toString(); 
      } 
      response.sendRedirect(uri); 
     }; 
    } 
関連する問題