我们可以在symfony2访问控制中使用正则表达式吗?

时间:2012-10-12 22:48:29

标签: php symfony

我们可以在symfony2安全性的访问控制中使用正则表达式吗?

1) /foo/{id} -- [ROLE_ADMIN]
2) /foo/{id}/profile --  [IS_AUTHENTICATED_ANONYMOUSLY]

另一个问题:

如果我从安全模块中删除了access_control,它仍会转到安全模块并尝试Authenticate中的Security/Authentication/Provider/AuthProvide

理想的行为应该是什么?我认为如果access_control中没有security.yml,则不应对资源进行身份验证。

我的防火墙配置是:

 firewalls:
    main:
            pattern: ^/
            anonymous: true
            myapp: true

1 个答案:

答案 0 :(得分:13)

是的,你可以使用正则表达式。

/foo/{id}/profile与您想要的不符。由于id可能是一个整数,因此您必须使用:

^/foo/[0-9]+/profile$

^/foo/[^/]+/profile$