2012-08-14 75 views
0

我需要拒絕除某些網址之外的匿名連接。拒絕匿名連接,除了某些網址

firewalls: 
     install: 
      pattern: ^/install/.* 
      security: false 
     main: 
      pattern: ^/ 
      form_login: 
       provider: fos_userbundle 
       login_path: /login 
       check_path: /login_check 
       use_forward: true 
       always_use_default_target_path: true 
       default_target_path:   /
       post_only: true 
      logout: true 
      anonymous: ~ 

    access_control: 
     - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY } 
     - { path: ^/login_check, role: IS_AUTHENTICATED_ANONYMOUSLY } 
     - { path: ^/install/, role: IS_AUTHENTICATED_ANONYMOUSLY } 
     - { path: ^/*, roles: ROLE_USER } 

這聽起來像行「 - {路徑:^/*,角色:ROLE_USER}」不工作,但能戰勝我的防火牆「安裝」,因爲他們同根同源(模式/)。

我該怎麼辦?

回答

1

一個快速的方法是從你的防火牆main排除/install路徑:

firewalls: 
     install: 
      pattern: ^/install/.* 
      security: false 
     main: 
      pattern: ^/(?!install/) 
      ... 
+0

這是很好的。謝謝 – Chopchop 2012-08-20 08:12:31