我正在尝试为正在使用Spring Authorization Server中的“/oauth2/token”端点交换令牌代码的用户实现额外的检查。为此,我需要提供自定义错误消息、错误代码和特定的http状态(400或500除外)。
我看到代码交换从OAuth2TokenEndpointFilter
开始,但它有一个严格的异常处理,如
private void sendErrorResponse(HttpServletRequest request, HttpServletResponse response,
AuthenticationException exception) throws IOException { ... }
并且无法覆盖和设置
private AuthenticationFailureHandler authenticationFailureHandler = this::sendErrorResponse;
因此,我可以从OAuth2AuthenticationException
扩展,但它不适合,因为我无法控制状态和响应主体。
1条答案
按热度按时间n7taea2i1#
好吧,我应该更仔细地阅读医生。
我仍然必须从
AuthenticationException
扩展,但我也可以完全控制失败,因此添加自定义主体/代码/状态