使用Spring将重定向设置为自定义身份验证失败处理程序

胸腺

在Spring中将重定向设置为自定义AuthenticationFailureHandler的正确方法是什么?

可以给控制器打电话吗?

代码如下:

@Component
public class MyAuthenticationFailureHandler extends SimpleUrlAuthenticationFailureHandler {

    @Override
    public void onAuthenticationFailure(HttpServletRequest request,
            HttpServletResponse response, AuthenticationException exception)
            throws IOException, ServletException {
        super.onAuthenticationFailure(request, response, exception);

        if (exception.getClass().isAssignableFrom(
                CustomUsernameNotFoundException.class)) {

            // TODO Set the redirect

        }
    }

}
小羊肖恩

您正在呼叫super.onAuthenticationFailure,它将执行到已配置URL的重定向。因此,响应已经提交,您不能决定重定向其他地方。

您可以配置SimpleUrlAuthenticationFailureHandler为重定向到一个URL,并且仅在您不想自己进行重定向的情况下才调用super方法。

或者,AuthenticationFailureHandler直接实现并在故障方法中实现所需的所有逻辑-一旦事情超出了一定的复杂度,我宁愿完全避免继承:

if (oneCondition) {
    // redirect to IdP

} else {
    // redirect to registration page
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

设置自定义处理程序时重定向失败

来自分类Dev

ASP.NET Core 3.1的自定义身份验证处理程序的授权失败?

来自分类Dev

Symfony2 phpunit功能测试自定义用户身份验证在重定向后失败(与会话相关)

来自分类Dev

使用 Devise,如何自定义失败的身份验证?

来自分类Dev

如何使用java config将Spring Security 3.2配置为使用Dao身份验证和自定义身份验证过滤器

来自分类Dev

如何使用Silex框架实现自定义身份验证成功处理程序?

来自分类Dev

如何使用Windows身份验证和自定义角色提供程序设置OWIN

来自分类Dev

Spring boot、Security、OAuth2:是否可以使用自定义 AuthorizationCodeResourceDetails?身份验证服务器需要重定向 url 中的特定参数

来自分类Dev

Django request.user 在重定向后变为匿名。使用自定义用户模型和身份验证

来自分类Dev

使用Spring Security配置自定义LDAP身份验证提供程序

来自分类Dev

取消ADFS Windows身份验证时如何重定向到自定义页面?

来自分类Dev

WSO2-自定义身份验证端点POST后无法重定向

来自分类Dev

Laravel 5.3身份验证后重定向的自定义路径

来自分类Dev

Laravel身份验证重定向失败

来自分类Dev

身份验证重定向失败

来自分类Dev

将 vagrant up 与准系统自定义包一起使用时身份验证失败

来自分类Dev

Symfony自定义身份验证提供程序失败消息

来自分类Dev

自定义Windows身份验证程序包登录失败

来自分类Dev

对Firebase的多个自定义身份验证请求失败

来自分类Dev

当自定义凭据身份验证提供程序的身份验证失败时,返回自定义HTTP响应代码

来自分类Dev

Rails 401身份验证错误的自定义处理程序

来自分类Dev

调试设置为true的Firebase自定义身份验证令牌不冗长

来自分类Dev

从Flutter设置Firebase身份验证的自定义声明

来自分类Dev

Firebase-身份验证自定义令牌错误身份验证/网络请求失败

来自分类Dev

在Spring Security中设置自定义身份验证和角色

来自分类Dev

未调用自定义身份验证提供程序

来自分类Dev

具有Spring Security和Java Config的自定义身份验证提供程序

来自分类Dev

自定义身份验证提供程序未称为Spring Security

来自分类Dev

Spring Security自定义身份验证提供程序不起作用

Related 相关文章

  1. 1

    设置自定义处理程序时重定向失败

  2. 2

    ASP.NET Core 3.1的自定义身份验证处理程序的授权失败?

  3. 3

    Symfony2 phpunit功能测试自定义用户身份验证在重定向后失败(与会话相关)

  4. 4

    使用 Devise,如何自定义失败的身份验证?

  5. 5

    如何使用java config将Spring Security 3.2配置为使用Dao身份验证和自定义身份验证过滤器

  6. 6

    如何使用Silex框架实现自定义身份验证成功处理程序?

  7. 7

    如何使用Windows身份验证和自定义角色提供程序设置OWIN

  8. 8

    Spring boot、Security、OAuth2:是否可以使用自定义 AuthorizationCodeResourceDetails?身份验证服务器需要重定向 url 中的特定参数

  9. 9

    Django request.user 在重定向后变为匿名。使用自定义用户模型和身份验证

  10. 10

    使用Spring Security配置自定义LDAP身份验证提供程序

  11. 11

    取消ADFS Windows身份验证时如何重定向到自定义页面?

  12. 12

    WSO2-自定义身份验证端点POST后无法重定向

  13. 13

    Laravel 5.3身份验证后重定向的自定义路径

  14. 14

    Laravel身份验证重定向失败

  15. 15

    身份验证重定向失败

  16. 16

    将 vagrant up 与准系统自定义包一起使用时身份验证失败

  17. 17

    Symfony自定义身份验证提供程序失败消息

  18. 18

    自定义Windows身份验证程序包登录失败

  19. 19

    对Firebase的多个自定义身份验证请求失败

  20. 20

    当自定义凭据身份验证提供程序的身份验证失败时,返回自定义HTTP响应代码

  21. 21

    Rails 401身份验证错误的自定义处理程序

  22. 22

    调试设置为true的Firebase自定义身份验证令牌不冗长

  23. 23

    从Flutter设置Firebase身份验证的自定义声明

  24. 24

    Firebase-身份验证自定义令牌错误身份验证/网络请求失败

  25. 25

    在Spring Security中设置自定义身份验证和角色

  26. 26

    未调用自定义身份验证提供程序

  27. 27

    具有Spring Security和Java Config的自定义身份验证提供程序

  28. 28

    自定义身份验证提供程序未称为Spring Security

  29. 29

    Spring Security自定义身份验证提供程序不起作用

热门标签

归档