Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.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 是否可以在Symfony 2中保护整个控制器?_Php_Symfony_Jms - Fatal编程技术网

Php 是否可以在Symfony 2中保护整个控制器?

Php 是否可以在Symfony 2中保护整个控制器?,php,symfony,jms,Php,Symfony,Jms,我正在使用JMSSecurityExtra捆绑包来保护我的控制器中的方法。 但是有什么方法可以用@secure保护整个控制器吗?此注释只能应用于方法 你可以这样做(这是一个正则表达式): 阅读文档:这可以按照 提示:如果您想用相同的方法保护控制器的所有操作 规则,您还可以对类本身指定@PreAuthorize。小心 但是,此规则仅适用于中声明的方法 这个班 jms_security_extra: method_access_control: 'AcmeDemoBundl

我正在使用JMSSecurityExtra捆绑包来保护我的控制器中的方法。
但是有什么方法可以用
@secure
保护整个控制器吗?

此注释只能应用于方法

你可以这样做(这是一个正则表达式):

阅读文档:

这可以按照

提示:如果您想用相同的方法保护控制器的所有操作 规则,您还可以对类本身指定@PreAuthorize。小心 但是,此规则仅适用于中声明的方法 这个班

jms_security_extra:
    method_access_control:
        'AcmeDemoBundle:AdminController:.*Action': 'hasRole("ROLE_ADMIN")'
use JMS\SecurityExtraBundle\Annotation\PreAuthorize;

 /** @PreAuthorize("hasRole('A') or (hasRole('B') and hasRole('C'))") */
class MyService
{

    public function secureMethod()
    {
        // ...
    }
}