Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony2允许使用某些方法对某些路由进行匿名_Php_Api_Rest_Symfony - Fatal编程技术网

Php Symfony2允许使用某些方法对某些路由进行匿名

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:

我正在用Symfony2为自己的项目开发后端服务。我想做的是简单的用户注册。每当需要创建用户时,都会有对的POST调用

/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

我现在还有一个问题。我做了这个改变,但它仍然不让我做。