当前位置: 首页 > 知识库问答 >
问题:

sping-security with sping-boot,自定义登录页面,错误403

徐景明
2023-03-14

我使用spring-boot和spring-security构建项目,使用自定义登录页面404次错误,我想做的是将登录页面和项目分开,并在登录页面上使用Ajax URL对发送的用户信息进行身份验证,但总是错误403,我更改了Spring boot安全配置的配置信息但没有具体效果。以下代码:

@Override
public void configure(HttpSecurity http) throws Exception{
    http.authorizeRequests()
            .anyRequest().authenticated()
            .antMatchers("/index.html").permitAll()
            .and()
            .formLogin().usernameParameter("username")
            .passwordParameter("password")
            .loginProcessingUrl("/login")
            .loginPage("/login")
            .failureUrl("/login?error")
            .permitAll()
            .and()
            .logout().permitAll();
}

发送帖子url:localhost:8888/登录参数:用户名、密码响应:403

错误消息:

此应用程序没有 /error的显式映射,因此您将其视为后备程序。
出现意外错误(type=禁止,status=403)。
未找到预期的csrf令牌。您的会话过期了吗?

共有1个答案

施永宁
2023-03-14

您必须将post配置为包含来自Spring Security的csrf令牌。您必须在POST请求中设置标头参数“X-CSRF-TOKEN”。示例POST请求:

$.ajax({
    type: "POST",
    beforeSend: function (request)
    {
        request.setRequestHeader("X-CSRF-TOKEN", "${_csrf.token}");
    },

    ///...

});
 类似资料:
  • 我想知道我应该如何创建我自己的自定义登录页面?我尝试了https://docs.spring.io/spring-security/site/docs/current/guides/html5/form-javaconfig.html和http://www.baeldung.com/spring-mvc-tutorial#configviews等指南,但没有任何效果,因为我似乎无法使类工作。我一直

  • 请参考一些wordpress post登录插件。我有3页的网站主页,关于正常工作和工作安全,我想显示工作安全页面,如果用户登录有电子邮件/只是虚拟id,我可以生成。找不到此登录模块的插件。带有自定义页面的自定义菜单 使用这个脚本,我可以创建菜单,但不能重定向单独的页面 函数my_wp_nav_menu_args($args=''){ 如果(用户是否已登录){ }否则{ } } 添加过滤器(“wp\

  • 我在我的JSF应用程序中使用容器管理的安全性,因此我有一个低于默认设置的登录页面。 现在在登录页面中,我想在登录按钮旁边添加一个按钮,以允许用户注册。 但我该如何将其转发到我的登记簿。我的注册按钮的xhtml页面?我用以下代码进行了尝试: 我也尝试将表单更改为h: form,以便我可以使用p:命令按钮,但正如我注意到的,我的登录页面不工作,当我单击提交按钮时什么也没有发生。 如何实现我想做的事?

  • 问题内容: 在我的Spring Boot应用程序中,我试图配置自定义错误页面,例如404,我在应用程序配置中添加了以下Bean: 此外,我还创建了以下简单的Thymeleaf模板: 并将其添加到文件夹中。现在,在404错误上,我只能看到白屏。 我在做什么错以及如何正确设置404页面?此外,是否可以将模板而不是仅将静态页面用于自定义错误页面? 问题答案: 在Spring Boot 1.4.x中,你可

  • 在我的Spring Boot应用程序中,我试图配置自定义错误页,例如,对于404,我在应用程序配置中添加了以下Bean: 此外,我还创建了以下简单的Thymeleaf模板: 并将其添加到文件夹中。现在关于404错误,我只能看到白色屏幕。 我做错了什么?如何正确设置404页面?另外,是否可以使用模板而不仅仅是静态页面来定制错误页面?

  • 我试图在我的Web应用程序中创建自定义错误页面,而不是白标签页面。正如我所知,在Spring Boot中,我所需要做的就是在resources/static/templates路径下添加一个error.html文件,所以我做到了(我使用的是Thymeleaf)。但现在它显示的不是白标签页面,而是tomcat错误页面。我还试图补充: 到属性文件中,但结果是相同的-容器错误页。做这件事的正确方法是什么