繁体   English   中英

在Symfony2上的测试环境中禁用安全防火墙

[英]Disable security firewall in test environment on Symfony2

我正在尝试为Symfony2中的测试环境禁用安全防火墙,但我没有运气。 这是我在config_test.yml中的内容:

security:
    firewalls:
        web:
            pattern: .*
            security: false
            anonymous: ~

但是,这并不是禁用安全性。 任何想法如何在测试环境中完全禁用某个防火墙的安全性?

可能解决方案

你可以从config.yml提取这部分代码:

imports:
    - { resource: security.yml }

并把它分开来config_dev.ymlconfig_prod.yml 在这种情况下, config_test.yml将不会导入安全配置,因此,您将在测试环境中没有安全性。

不要更改security.yml ,而是为测试目的制定临时规则。

您必须在config_test.yml上禁用所有安全防火墙配置:

  imports:
      - { resource: config_dev.yml }

  framework:
      test: ~
      session:
          storage_id: session.storage.mock_file
      profiler:
          collect: false

  web_profiler:
      toolbar: false
      intercept_redirects: false

  swiftmailer:
      disable_delivery: true

  security:
      firewalls:
          dev:
              pattern:  ^/
              security: false

注意

心说config_test.yml进口config_dev.yml ,其中进口config.yml 因此,您必须覆盖测试配置文件上的所有基本配置才能使其正常工作。

如同类似主题中所述,在您的security.yml中开发以下规则时关闭防火墙

firewalls:
    dev:
        pattern:  ^/
        security: false

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM