当前位置: 首页 > 面试题库 >

Spring Security-调度到/ j_spring_security_check

尹承业
2023-03-14
问题内容

我已经安装了Spring安全性,并且通过login.jsp登录可以正常工作。

现在,我必须根据URL自动使用户登录(类似于Single Sign
On)。我基本上在URL中有一个path参数,该参数基本上是一个加密代码,我对该代码进行处理以进行自动登录。

我正在修改我的LoginController以检查我是否具有有效的路径参数,使用该参数获取用户名和密码,并使用此用户名和密码
"forward:/j_spring_security_check?j_username="+username+"&j_password="+password

这将我定向到login.jsp并出现以下错误 Your login attempt was not successful, try again. Caused : Authentication method not supported: GET

我也尝试过"redirect:/j_spring_security_check?j_username="+username+"&j_password="+password但没有帮助。

调用/j_spring_security_check是一个POST,但forward:redirect:正在做GET,所以我怎么能分派到/j_spring_security_checkPOST从我的LoginController?

谢谢


问题答案:

/j_spring_security_checkURL被映射为UsernamePasswordAuthenticationFilter服务请求。

在中UsernamePasswordAuthenticationFilter,默认情况下将postOnly设置为true

下面改变spring-security.xml其设置postOnlyfalse工作。

<bean id="authenticationFilter" 
      class="org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter"
      p:postOnly="false" />

另外,在中web.xml,需要以下配置:

<filter-mapping> <filter-name>springSecurityFilterChain</filter-name>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
</filter-mapping>


 类似资料:
  • 主要内容:1.入门,2.设置用户名和密码1.入门 1.启动一个SpringBoot项目 2.导入SpringSecurity相关依赖 3.编写Controller TestController.java 用户是user 密码是刚刚的 2.设置用户名和密码 1.在配置文件中设置 2.在配置类中设置 3.自定义实现类 2.1 配置文件中设置 2.2 在配置类中设置 设置用户名为zZZ,密码为root 2.3 自定义实现类 配置类: 业务类:

  • 在WAR的情况下,它试图将请求转发到/error页面,并寻找它的处理程序方法(请参见底部的日志)。 最后我得到以下回应: 我该换什么才能得到401?

  • 1.导入jar包 web.xml spring-security.xml

  • 本文向大家介绍SpringSecurity 测试实战,包括了SpringSecurity 测试实战的使用技巧和注意事项,需要的朋友参考一下 引言 试题管理系统的安全模块使用Spring Security,代码从原华软仓库移植,在移植的过程中,发现原测试编写的不好,遂在新系统中对安全模块测试进行了重构。 Spring 测试 添加@SpringBootTest注解,意为这是一个基于SpringBoot

  • 我正在设置Angular Spring Security模块来登录和注册用户。当我注册一个用户时,一切都正常。注册后的最后一步是自动登录,但我遇到了以下错误: XMLHttpRequest无法加载超文本传输协议//localhost:8080/com-tesis/login.请求的资源上不存在“访问控制允许起源”标头。因此不允许访问起源“超文本传输协议//localhost:9000”。响应的HT

  • 通过设置调度标签、调度策略可以实现控制为计算主机提供底层资源的宿主机(物理机)、云账号、网络与存储。 调度标签 调度标签用于与资源进行静态绑定,从而实现资源的调度。 调度策略 调度策略即设置在满足指定条件时,将会根据偏好选择或排除在绑定某一类调度标签的宿主机创建虚拟机。 动态调度标签 动态调度标签即为根据设定的条件在资源调度前动态为宿主机绑定调度标签。