Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ajax CSRF代币到期,带烧瓶和WTF表格_Ajax_Security_Flask_Csrf - Fatal编程技术网

Ajax CSRF代币到期,带烧瓶和WTF表格

Ajax CSRF代币到期,带烧瓶和WTF表格,ajax,security,flask,csrf,Ajax,Security,Flask,Csrf,在CSRF令牌到期时,最佳做法是什么 假设用户正在使用表单访问页面(Jinja模板),但仅在n小时后尝试提交表单。到那时,CSRF令牌显然已经过期 当然,我可以延长代币的寿命,但我正在寻找更好的方法。 在使用ajax提交表单之前,我是否应该尝试通过ajax请求获取一个新令牌?您可以获取一个新令牌,是的。这将是最常见的方法。但真正的问题是——它真的需要吗?您还可以更改令牌过期时间。如果您使用的是Flask WTF这可以通过WTF\u CSRF\u TIME\u LIMIT@Kruspe来完成。您知

在CSRF令牌到期时,最佳做法是什么

假设用户正在使用表单访问页面(Jinja模板),但仅在n小时后尝试提交表单。到那时,CSRF令牌显然已经过期

当然,我可以延长代币的寿命,但我正在寻找更好的方法。
在使用ajax提交表单之前,我是否应该尝试通过ajax请求获取一个新令牌?

您可以获取一个新令牌,是的。这将是最常见的方法。但真正的问题是——它真的需要吗?您还可以更改令牌过期时间。如果您使用的是
Flask WTF
这可以通过
WTF\u CSRF\u TIME\u LIMIT
@Kruspe来完成。您知道我可以安全地延长时间限制多少吗?好的做法是什么?默认设置为1小时(3600秒)。这对于大多数web应用程序来说已经足够了。根据你正在做的事情,你可以扩展这个周期。对于银行应用程序来说,一小时可能太长了。对于仅24/7运行的内部控制面板,您可以输入一周或更长时间的值。只要考虑到安全问题。您还可以定义自定义OnExpiredToken处理程序来检查令牌是否过期,但除此之外是否有效,然后在初始响应中发送一个新令牌。您可以获取一个新令牌,是的。这将是最常见的方法。但真正的问题是——它真的需要吗?您还可以更改令牌过期时间。如果您使用的是
Flask WTF
这可以通过
WTF\u CSRF\u TIME\u LIMIT
@Kruspe来完成。您知道我可以安全地延长时间限制多少吗?好的做法是什么?默认设置为1小时(3600秒)。这对于大多数web应用程序来说已经足够了。根据你正在做的事情,你可以扩展这个周期。对于银行应用程序来说,一小时可能太长了。对于仅24/7运行的内部控制面板,您可以输入一周或更长时间的值。只要考虑到安全问题。您还可以定义自定义OnExpiredToken处理程序来检查令牌是否过期,但除此之外是否有效,然后在初始响应中发送一个新的令牌。