2012-02-27 13 views
10

Con esta configuración:Symfony2 y el acceso anónimo a alguna ruta

firewalls: 
    login: 
     pattern: ^/login$ 
     anonymous: ~ 
     security: false 

    foo: 
     pattern: ^/foo$ 
     anonymous: ~ 
     security: false 

    secured_area: 
     pattern: ^/ 
     form_login: 
      login_path: /login 
      check_path: /login_check 
     logout: 
      path: /logout 
      target:/

access_control: 
    - { path: ^/, roles: ROLE_ADMIN } 
    - { path: ^/foo, roles: IS_AUTHENTICATED_ANONYMOUSLY } 

yo quiero ser capaz de hacer /foo forma anónima accesible. Sin embargo, cuando intento ir allí incluso después de borrar el caché, no me permite hacerlo y lo redirecciono a la pantalla de inicio de sesión.

¿Cómo hago una ruta que sea accesible de manera anónima, manteniendo el resto del sistema para ser asegurado?

Respuesta

12

Reemplazar

- { path: ^/foo, roles: IS_ANONYMOUS } 

con

- { path: ^/foo, roles: IS_AUTHENTICATED_ANONYMOUSLY } 

ACTUALIZACIÓN

Además, creo, tendrá que añadir

- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY } 

f o autenticación para que funcione correctamente

Para más información echa un vistazo Evite los errores comunes sección here.

+0

actualización pregunta bien y me lo han probado, pero todavía redirige a iniciar sesión (lo hice clara la caché también). – Tower

+0

Bien, parecía que no funcionaba para el entorno 'dev' por alguna razón. – Tower

+0

@rFactor, es difícil saber lo que está mal ahora. Intenta encontrar la pista en los registros. –

Cuestiones relacionadas