Symfony2中的安全性

时间:2012-04-27 09:26:48

标签: security symfony

我创建了一个名为“User”的Bundle。在一般路由中,我将/ user添加到每个UserBundle URL。因此,例如,当我在UserBundle中定义路由/列表时,实际路径为http://myapp.loc/user/list

我正试图强迫用户登录使用这个网站,我正在这样做:

security:
       firewalls:
          login_firewall:
              pattern:    ^/user/login
              anonymous:  ~
          secured_area:
              pattern:    ^/
              form_login:
                   login_path: user_login
                   check_path: user_login_check
                   default_target_path: /
              logout:
                   path: /user_logout
                   target: user_login
              remember_me:
                    key:      atipics-soft2012
                    lifetime: 3600           
       access_control:
           - { path: ^/, roles: ROLE_USER }
       providers:
           users:
               entity: { class: MyApp\UserBundle\Entity\User, property:email }
       encoders:
           MyApp\UserBundle\Entity\User: { algorithm:  sha512, iterations: 10 }

我收到这样的错误:

  

InvalidConfigurationException:路径的配置无效   “security.firewalls.secured_area”:check_path“user_login_check”   对于登录方法,“form_login”与防火墙模式不匹配   “^ /”。

可能是什么问题?

我已经在路线文件中添加了这条路线。

1 个答案:

答案 0 :(得分:1)

我不知道这是一个错误还是用于这种方式,但check_path不接受路由名称。您必须将其设置为路径。