Access control Symfony2-访问控制

Access control Symfony2-访问控制,access-control,symfony,Access Control,Symfony,我想为所有内容设置access\u control,但不为模式/login(可能还有更多路由)设置 因此,我首先设置了登录路径,角色经过匿名身份验证。 然后我为所有内容设置了路径,角色已通过身份验证\u完全 问题是登录表单现在生成了两次。我看到两个登录字段,两个提交按钮,等等 如果我删除了我没有的访问控制规则,并且只设置为一个路径,如/blog/*,并且使用角色:经过了充分的身份验证,,那么它可以正常工作,登录表单就像它应该的那样 因此,我的配置“除此之外,您需要在任何地方进行身份验证”不起作用

我想为所有内容设置
access\u control
,但不为模式
/login
(可能还有更多路由)设置

因此,我首先设置了登录路径,角色
经过匿名身份验证。
然后我为所有内容设置了路径,角色
已通过身份验证\u完全

问题是登录表单现在生成了两次。我看到两个登录字段,两个提交按钮,等等

如果我删除了我没有的访问控制规则,并且只设置为一个路径,如
/blog/*
,并且使用角色:
经过了充分的身份验证,
,那么它可以正常工作,登录表单就像它应该的那样

因此,我的配置“除此之外,您需要在任何地方进行身份验证”不起作用

这是我在生成两次登录表单时尝试执行的操作:

access_control:
   - { path: /login, role: IS_AUTHENTICATED_ANONYMOUSLY }
   - { path: /.*, role: IS_AUTHENTICATED_FULLY }
有没有人有任何好的例子来说明如何建立这样一个规则?

所以我得到了答案:)所以如果有人有这个问题,你也必须让_wdt和_profiler被匿名访问:)

访问控制: -{path://\u wdt/*,角色:已通过\u匿名身份验证} -{path:/\u profiler/*,角色:已通过\u匿名身份验证} -{路径:/login,角色:是否以匿名方式进行身份验证} -{路径:/.*,角色:是否经过身份验证}
别忘了添加此防火墙:

firewalls:
    dev:
        pattern:  ^/(_(profiler|wdt)|css|images|js)/
        security: false

+1我今天遇到了这个问题,不明白为什么它只发生在Firefox中,但这个问题解决了!我还没有检查,所以我不是100%,但这个问题可能只会发生在开发模式。
firewalls:
    dev:
        pattern:  ^/(_(profiler|wdt)|css|images|js)/
        security: false