php token过期时间,Laravel 安全:CSRF Token 过期时间

问题

Laravel 会对所有的 POST 数据默认开启 CSRF 防护,实现的机制是检测 POST 数据里的 _token 信息。

问题是:CSRF _token 的过期时间是多久?

回答

会在每一次 Session 创建时重新生成,也就是说,跟会话的时间一致,Laravel 默认为 120 分钟,可以通过修改 config/session.php 文件里的 lifetime 修改。

来源

.

.

.

class Store implements Session

{

.

.

.

/**

* 开始会话

*

* @return bool

*/

public function start()

{

$this->loadSession();

if (! $this->has('_token')) {

$this->regenerateToken();

}

return $this->started = true;

}

.

.

.

/**

* 重新生成 CSRF token

*

* @return void

*/

public function regenerateToken()

{

$this->put('_token', Str::random(40));

}

.

.

.

注意

config/session.php 配置的 lifetime 选项不应配置过高的值。

因 Laravel 默认会给所有访问建立会话,设置过长时间,例如说两年,两年内所有用户访问,包括未登录的游客,都会产生会话数据。如果刚好你的网站有不小的流量,很快系统资源就会被消耗完。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值