我想设置 access_control 对于一切,但不是为了模式 /login (也许还有更多路线)。

因此,我首先设置了登录路径, IS_AUTHENTICATED_ANONYMOUSLY。然后我为所有角色设置了一切的道路 IS_AUTHENTICATED_FULLY.

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

如果我删除Access_control规则,则我没有,仅设置为一个路径 /blog/.* 并发挥作用: IS_AUTHENTICATED_FULLY, ,它可以正常工作,登录表格就像应有的。

所以我的配置除了这里,您需要在任何地方进行身份验证“不起作用。

这是我在两次生成登录表格时尝试做的:

access_control:
   - { path: /login, role: IS_AUTHENTICATED_ANONYMOUSLY }
   - { path: /.*, role: IS_AUTHENTICATED_FULLY }

有人有任何很好的例子来设置这样的规则吗?

有帮助吗?

解决方案

所以我得到了答案:)因此,如果有人应该遇到这个问题,您还必须让_wdt和_profiler匿名访问:)

 access_control:

       - { path: /_wdt/.*, role: IS_AUTHENTICATED_ANONYMOUSLY }
       - { path: /_profiler/.*, role: IS_AUTHENTICATED_ANONYMOUSLY }
       - { path: /login, role: IS_AUTHENTICATED_ANONYMOUSLY }
       - { path: /.*, role: IS_AUTHENTICATED_FULLY }

其他提示

不要忘记添加此防火墙:

firewalls:
    dev:
        pattern:  ^/(_(profiler|wdt)|css|images|js)/
        security: false
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top