nelmio / security-bundle
为 Symfony 提供额外的安全功能:签名/加密 Cookie、HTTPS/SSL/HSTS 处理、Cookie 会话存储等
Requires
- php: ^7.4 || ^8.0
- symfony/deprecation-contracts: ^2.5 || ^3
- symfony/framework-bundle: ^5.4 || ^6.3 || ^7.0
- symfony/http-kernel: ^5.4 || ^6.3 || ^7.0
- symfony/security-core: ^5.4 || ^6.3 || ^7.0
- symfony/security-csrf: ^5.4 || ^6.3 || ^7.0
- symfony/security-http: ^5.4 || ^6.3 || ^7.0
- symfony/yaml: ^5.4 || ^6.3 || ^7.0
- ua-parser/uap-php: ^3.4.4
Requires (Dev)
- phpstan/phpstan: ^1.4
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpstan/phpstan-strict-rules: ^1.1
- phpstan/phpstan-symfony: ^1.1
- phpunit/phpunit: ^9.5
- psr/cache: ^1.0 || ^2.0 || ^3.0
- symfony/browser-kit: ^5.4 || ^6.3 || ^7.0
- symfony/cache: ^5.4 || ^6.3 || ^7.0
- symfony/phpunit-bridge: ^6.3 || ^7.0
- symfony/twig-bundle: ^5.4 || ^6.3 || ^7.0
- twig/twig: ^2.10 || ^3.0
- dev-master / 3.x-dev
- v3.4.2
- v3.4.1
- v3.4.0
- v3.3.0
- v3.2.0
- v3.1.1
- v3.1.0
- v3.0.0
- v3.0.0-alpha.1
- v2.12.0
- v2.11.0
- v2.10.3
- v2.10.2
- v2.10.1
- v2.10.0
- v2.9.1
- v2.9.0
- v2.8.0
- 2.7.0
- 2.6.0
- 2.5.1
- 2.5.0
- 2.4.0
- 2.3.1
- 2.3.0
- 2.2.4
- 2.2.3
- 2.2.2
- 2.2.1
- 2.2.0
- 2.1.0
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 1.10.0
- 1.9.1
- 1.9.0
- 1.8.0
- 1.7.0
- 1.6.0
- 1.5.0
- 1.4.0
- 1.3.0
- 1.2.0
- 1.1.0
- 1.0.0
This package is auto-updated.
Last update: 2024-09-11 06:23:01 UTC
README
关于
NelmioSecurityBundle 为您的 Symfony 应用程序提供额外的安全功能。
安装
在您的 composer.json 中要求安装 nelmio/security-bundle
包,并更新您的依赖项
$ composer require nelmio/security-bundle
该捆绑包应该由 Symfony Flex 自动启用。如果您不使用 Flex,您需要手动启用它,如文档中所述。
功能
阅读 文档 了解每个功能的详细信息和配置
-
内容安全策略:使用策略指导浏览器永远不执行内联脚本,或永远不加载来自页面域之外的域名的内容,可以减轻现代浏览器中跨站脚本攻击(XSS)。
-
签名 Cookie:指定某些 Cookie 进行签名,这样用户就无法修改它们。请注意,它们不会被加密,但只会被签名。内容仍然对用户可见。
-
点击劫持防护:向所有响应添加 X-Frame-Options 头部,以防止您的网站被放入框架/iframe 中。这具有严重的安全影响,Facebook 等多次证明了这一点。您可以从自身或从任何 URL 允许您的网站被框架。
-
外部重定向检测:根据用户输入从您的网站重定向到任意 URL 可能会被利用来混淆用户,使他们点击看似指向有效网站的链接,而实际上却指向恶意内容。也可能因此获得 PageRank。
-
强制 HTTPS/SSL 处理:这将强制所有请求通过 SSL。它还将发送 HSTS 头部,以便支持它的现代浏览器让用户使用 HTTPS,即使他们输入没有 https 的 URL,避免在公共 Wi-Fi 上的攻击。
-
灵活的 HTTPS/SSL 处理:如果您不想强制所有用户使用 HTTPS,至少应使用安全的会话 Cookie 并强制对已登录用户使用 SSL。但这样已登录用户在访问非 HTTPS 资源时将看起来已注销。这不是一个好的解决方案。这将使应用程序检测到已登录用户,并将他们重定向到安全 URL,而不会使会话 Cookie 不安全。
-
禁用内容类型嗅探:要求使用正确的 mime 类型加载脚本。这禁用了某些浏览器具有的功能,该功能使用内容嗅探来确定响应是否为有效的脚本文件。
-
(已弃用) XSS 防护:在兼容的浏览器(IE 8 及更高版本)上启用/禁用 Microsoft XSS 防护。
-
引用策略:向所有响应添加
Referrer-Policy
头部,以控制从您的网站发出的请求中添加的Referer
头部,以及浏览器通过网站导航。
用法
查看文档获取使用说明。
许可证
在MIT许可证下发布,请参阅LICENSE文件。