如何限制除两个页面之外的所有页面的访问权限

时间:2013-11-20 18:08:46

标签: symfony

我需要阻止访问除//register之外的任何网站,以便每个人都可以访问这两个网站,但必须对其余网站进行身份验证。

我该怎么做?我没有尝试过任何工作。

firewalls:
    secured_area:
        pattern:    ^/
        anonymous: ~

access_control:
    - { path: ^/(?!(|register))$, role: ROLE_USER }

防火墙匹配所有网站,并允许访问所有网站。

access_control部分应限制对//register以外的所有网站的访问权限。

嗯,问题是它不需要在任何地方登录,这意味着我可以自由访问任何网址。

怎么了?

1 个答案:

答案 0 :(得分:2)

试试这个

firewalls:
    secured_area:
        pattern:    ^/
        anonymous: ~

    access_control:
        - { path: ^/$, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/register$, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/, role: IS_AUTHENTICATED_FULLY }