【问题标题】:Secure area in Symfony2Symfony2 中的安全区域
【发布时间】:2011-06-29 19:09:29
【问题描述】:

我对 Symfony2 的安全功能有疑问。我想在 /my 前缀下保护我的应用程序的一个特殊区域。

我的配置如下:

security.config:
    providers:
        my:
            entity: { class: MyUserBundle:User, property: username }

    firewalls:
        public:
            pattern: /my/login.*
            security: false

        my:
            pattern: /my.*
            form-login:
                check_path: /my/login_check
                login_path: /my/login
            logout: true

    access_control:
        - { path: /my/login.*, roles: IS_AUTHENTICATED_ANONYMOUSLY }

当我尝试访问登录区域时,一切正常,提交表单会导致错误页面,因为_security_check 路由没有注册控制器,就像guide 中描述的那样:

_security_login:
    pattern: /my/login
    defaults: { _controller: MyUserBundle:Auth:login }

_security_check:
    pattern: /my/login_check

我认为通常 SecurityBundle 会侵入此过程,因此不需要控制器。 Symfony2 的配置总是非常复杂。

我想我错过了一些东西,希望你能帮忙。
提前致谢!

【问题讨论】:

    标签: php security symfony


    【解决方案1】:

    您必须定义一个防火墙(描述所有路由)并使用设置的 access_control 部分确定安全区域。

    【讨论】:

      【解决方案2】:

      我在symfony users mailing group 的帮助下解决了这个问题。

      【讨论】:

        猜你喜欢
        • 2017-11-13
        • 1970-01-01
        • 2021-01-05
        • 1970-01-01
        • 2015-12-08
        • 2020-06-13
        • 1970-01-01
        • 1970-01-01
        • 2022-08-18
        相关资源
        最近更新 更多