Php Symfony2允许使用某些方法对某些路由进行匿名
我正在用Symfony2为自己的项目开发后端服务。我想做的是简单的用户注册。每当需要创建用户时,都会有对的POST调用Php Symfony2允许使用某些方法对某些路由进行匿名,php,api,rest,symfony,Php,Api,Rest,Symfony,我正在用Symfony2为自己的项目开发后端服务。我想做的是简单的用户注册。每当需要创建用户时,都会有对的POST调用 /v1.0/users (with POST method) 我想创建一个新用户。除此之外,其他所有url都应该经过身份验证。因此,我创建了UserProvider和UserAuthenticator,如下所述: 我创建了一个安全区域,工作正常,但是我想用post方法禁用上面url的防火墙。我不知道该怎么做。这是我的security.yml文件 firewalls:
/v1.0/users (with POST method)
我想创建一个新用户。除此之外,其他所有url都应该经过身份验证。因此,我创建了UserProvider和UserAuthenticator,如下所述:
我创建了一个安全区域,工作正常,但是我想用post方法禁用上面url的防火墙。我不知道该怎么做。这是我的security.yml文件
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
api_user_secured_area:
pattern: ^/v1.0/users
stateless: true
simple_preauth:
authenticator: user_token_authenticator
provider: user_token_provider
access_control:
...
user_register:
path: /v1.0/users
roles: IS_AUTHENTICATED_ANONYMOUSLY ?? FOR POST ONLY ??
PS:我不想使用安全性注释(如控制器中的@security)可以使用Methods属性将访问控制过滤到给定的方法,请参阅此处了解有关访问控制的更多过滤器/选项: 以下是集成到代码中的选项:
access_control:
user_register:
path: /v1.0/users
methods: [ POST ]
roles: IS_AUTHENTICATED_ANONYMOUSLY
我现在还有一个问题。我做了这个改变,但它仍然不让我做。