cURL像这样使用:
curl -d j_username=admin -d j_password=admin -L http://localhost:8080/app/j_spring_security_check
CSRF
如果得到类似的信息
Expected CSRF token not found. Has your sessionexpired?,则表示已启用CSRF令牌保护。要使用cURL进行测试,您需要一个cookie和一个CSRF令牌本身。
以下命令会将所有cookie写入一个名为的文件,
cookie并打印出CSRF令牌。Spring
Security的默认令牌参数名称为
_csrf,如果您进行了更改,则还需要更改
grep csrf。
curl --cookie-jar cookie -L http://localhost:8080/app/j_spring_security_check | grep csrf
然后,您可以执行下一个命令,该命令将传递文件中的所有cookie。别忘了用上
|your_token_value|一个命令打印出的实际值替换(
_csrf如果您更改了它,则返回参数名)。
curl --cookie cookie -d "j_username=admin&j_password=admin&_csrf=|your_token_value|" -L http://localhost:8080/app/j_spring_security_check
从Spring Security 3.x到4.x
请注意,在春季安全4.x的缺省值
login-processing-url从更改
/j_spring_security_check为POST
/login,默认值
username-parameter从改变
j_username到
username的并且默认值
password-parameter从变化
j_password到
password。如果应用程序显式提供了这些属性,则迁移不需要任何操作。



