为什么我需要添加匿名身份验证以访问Symfony中的控制?

为什么我需要添加匿名身份验证以访问Symfony中的控制?,symfony,Symfony,文件说: 编辑security.yaml文件以允许任何人访问/login路径: # config/packages/security.yaml security: # ... access_control: - { path: ^/login$, roles: IS_AUTHENTICATED_ANONYMOUSLY } # ... 但我不需要添加此项,任何人都可以访问不在访问控制中的URL,为什么我需要此项?请参见此示例: # co

文件说:

编辑security.yaml文件以允许任何人访问/login路径:

  # config/packages/security.yaml
  security:
      # ...

  access_control:
        - { path: ^/login$, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        # ...
但我不需要添加此项,任何人都可以访问不在访问控制中的URL,为什么我需要此项?

请参见此示例:

 # config/packages/security.yaml
  security:
      # ...

  access_control:
        - { path: ^/login$, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/, roles: IS_AUTHENTICATED_FULLY }
        # ...

在本例中,只有当用户登录时,才可以访问具有
完全验证的路径,但是在登录路径中,用户不能登录,并且必须匿名

如果您将整个应用程序置于
{path:^/,角色:完全验证的路径
下,并且登录是异常的,这将非常有用。。。若整个应用程序都是fobidden,那个么您需要该行来允许用户登录