中间件,用于向响应添加Content-Security-Policy头部

v3.1.1 2020-12-02 00:05 UTC

This package is auto-updated.

Last update: 2024-08-29 04:25:28 UTC


README

Latest Version on Packagist Software License Testing Total Downloads

使用paragonie/csp-builder库向响应添加Content-Security-Policy头部的中间件。

要求

  • PHP >= 7.2
  • PSR-7 http库
  • PSR-15中间件分发器

安装

此包可以通过Composer以middlewares/csp的方式安装和自动加载。

composer require middlewares/csp

示例

use ParagonIE\CSPBuilder\CSPBuilder;

$csp = CSPBuilder::fromFile('/path/to/source.json');

Dispatcher::run([
    new Middlewares\Csp($csp)
]);

用法

将CSP构建器设置为构造函数。有关更多信息,请参阅paragonie/csp-builder。如果未提供,则创建一个具有限制性指令的通用构建器。

遗留

为旧浏览器生成遗留CSP头(X-Content-Security-PolicyX-Webkit-CSP)。默认为true,但您可以禁用它。

$middleware = (new Middlewares\Csp($csp))->legacy(false);

辅助工具

createFromFile

使用JSON文件创建实例的快捷方式

Dispatcher::run([
    Middlewares\Csp::createFromFile(__DIR__.'/csp-config.json')
]);

createFromData

使用数据数组创建实例的快捷方式

Dispatcher::run([
    Middlewares\Csp::createFromData([
        'script-src' => ['self' => true],
        'object-src' => ['self' => true],
        'frame-ancestors' => ['self' => true],
    ])
]);

有关最近更改的更多信息,请参阅CHANGELOG,有关贡献细节,请参阅CONTRIBUTING

MIT许可证(MIT)。有关更多信息,请参阅LICENSE