fyre/csrf

一个 CSRF 保护库。

v4.1.0 2024-08-18 02:56 UTC

This package is auto-updated.

Last update: 2024-09-18 03:09:18 UTC


README

FyreCSRF 是一个免费、开源的用于 PHP 的 CSRF 保护库。

目录

安装

使用 Composer

composer require fyre/csrf

在 PHP 中

use Fyre\Security\CsrfProtection;

方法

检查令牌

检查 CSRF 令牌。

CrsfProtection::checkToken($request);

禁用

禁用 CSRF 保护。

CsrfProtection::disable();

启用

启用 CSRF 保护。

CsrfProtection::enable();

获取字段

获取 CSRF 令牌字段名称。

$field = CsrfProtection::getField();

获取头信息

获取 CSRF 令牌头信息名称。

$header = CsrfProtection::getHeader();

获取键

获取 CSRF 会话键。

$key = CsrfProtection::getKey();

获取令牌

获取 CSRF 令牌。

$token = CsrfProtection::getToken();

获取令牌哈希

获取 CSRF 令牌哈希。

$tokenHash = CsrfProtection::getTokenHash();

是否启用

确定 CSRF 保护是否启用。

$enabled = CsrfProtection::isEnabled();

设置字段

设置 CSRF 令牌字段名称。

  • $field 是表示 CSRF 令牌字段名称的字符串。
CsrfProtection::setField($field);

设置头信息

设置 CSRF 令牌头信息名称。

  • $header 是表示 CSRF 令牌头信息名称的字符串。
CsrfProtection::setHeader($header);

设置键

设置 CSRF 会话键。

  • $key 是表示 CSRF 会话键的字符串。
CsrfProtection::setKey($key);

跳过检查回调

设置跳过检查回调。

  • $skipCheck 是一个接受 ServerRequest 作为第一个参数的 Closure
CsrfProtection::skipCheckCallback($skipCheck);

跳过检查回调应该返回 true 如果不应执行 CSRF 检查。

中间件

use Fyre\Security\Middleware\CsrfProtectionMiddleware;
  • $options 是包含中间件选项的数组。
    • field 是表示 CSRF 令牌字段名称的字符串,默认为 "csrf_token"。
    • header 是表示 CSRF 令牌头信息名称的字符串,默认为 "Csrf-Token"。
    • key 是表示 CSRF 会话键的字符串,默认为 "_csrfToken"。
    • skipCheck 是一个接受 ServerRequest 作为第一个参数的 Closure
$middleware = new CsrfProtectionMiddleware($options);

跳过检查回调应该返回 true 如果不应执行 CSRF 检查。

处理

$response = $middleware->process($request, $handler);

此方法将返回一个 ClientResponse