春季安全

时间:2012-10-22 10:28:17

标签: web-services spring spring-security

我正在尝试在我的应用程序中使用spring security来开发restful web服务,而不是直接向j_spring_security_check发送请求的方式,以便我可以提供与用户名和密码授权相同的URL作为Web服务。

目前我正在使用以下请求模式:

网址:“http:// localhost:8080 / CabFMS / j_spring_security_check” 内容类型:application / x-www-form-urlencoded 正文:{'j_username':'user','j_password':'123'}

回复:是凭证错误

我不确定Content-type和body参数。请提供建议。发送请求我正在使用REST客户端

塔伦古普塔

3 个答案:

答案 0 :(得分:1)

正确地注意到j_spring_security_checks期望application/x-www-form-urlencoded content,因此您需要对其进行编码:

j_username=user&j_password=123

答案 1 :(得分:0)

您的请求模式应为:

/ j_spring_security_check为j_username =用户安培;为j_password = 123

使用方法“POST”类型。

除此之外,您可以更改请求操作&参数文本“j_spring_security_check”和“j_username”,“j_password”通过在属性中配置替代文本:

登录处理-URL, 用户名参数, 密码参数

安全配置xml文件中的spring“form-login”标记。

答案 2 :(得分:0)

为此创建 AuthenticationSuccessHadler ,在authenticationSuccess方法中,返回带有用户名:密码

模式的base64编码授权标头

然后,在每个请求中,将标题设置为 Basic yourtokenhere