问题描述
我需要在对Struts动作使用ajax发布请求(ExtJs库)的应用程序中使用令牌来实现CSRF攻击防范。在这种情况下,如何实现令牌生成和验证?
I need to implement CSRF attack prevention using token in application that uses ajax post requests (ExtJs library) to Struts actions. How can I implement token generation and validation in such case?
推荐答案
在ExtJS中,您可以使用以下方法:
In ExtJS you can use this:
Ext.Ajax.setDefaultHeaders({ token: 'xyz' })
此操作将在您发送到服务器的每个请求中添加标头。
This operation will add header to each request you will send to server.
在服务器端,请考虑使用Spring Security。我推荐这种解决方案。
In server side consider using Spring Security. I recommend this solution.
第二个(不是最后一个选项)-您可以编写自己的servlet服务和
过滤器-身份验证(服务生成令牌) )
-授权(用于请求令牌验证的过滤器)。
The second (and not the last option) - you can write your own servlet service and filters for - authentication(service generating token) - authorization(filter for request token validation).
这篇关于从extjs到Struts操作的AJAX调用的CSRF预防的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!