使用OAuth2从Spring Security自定义身份验证错误

使用OAuth2从Spring Security自定义身份验证错误,第1张

使用OAuth2从Spring Security自定义身份验证错误

我需要创建一个新类,该类实现“ AuthenticationEntryPoint”,如下所示:

public class AuthExceptionEntryPoint implements AuthenticationEntryPoint{    @Override    public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException arg2) throws IOException, ServletException    {        final Map<String, Object> mapBodyException = new HashMap<>() ;        mapBodyException.put("error"    , "Error from AuthenticationEntryPoint") ;        mapBodyException.put("message"  , "Message from AuthenticationEntryPoint") ;        mapBodyException.put("exception", "My stack trace exception") ;        mapBodyException.put("path"     , request.getServletPath()) ;        mapBodyException.put("timestamp", (new Date()).getTime()) ;        response.setContentType("application/json") ;        response.setStatus(HttpServletResponse.SC_UNAUTHORIZED) ;        final ObjectMapper mapper = new ObjectMapper() ;        mapper.writevalue(response.getOutputStream(), mapBodyException) ;    }}

并将其添加到我的ResourceServerConfigurerAdapter实现中:

@Configuration@EnableResourceServerpublic class ResourceServerConfiguration extends ResourceServerConfigurerAdapter{       @Override    public void configure(HttpSecurity http) throws Exception    {        http.exceptionHandling().authenticationEntryPoint(new AuthExceptionEntryPoint()) ;    }}

您可以找到我的GitHub项目,该项目实现了您所需的一切:

https://github.com/pakkk/custom-spring-
security



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5673983.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存