如何在symfony2中为类字段使用访问安全性

时间:2013-10-25 06:26:17

标签: php symfony

我有以下情况。

我有15种类型的ROLES用于安全性,例如ROLE_1 , ROLE_2 ..... ROLE_15

现在我有了复杂矩阵,其中每个实体字段对每个角色都有5个不同的权限

LIKE

view , delete, readonly, undelete, edit, update

e,g ID ROLE_1 HAS VIEW权限

ID ROLE_2READ许可

ID ROLE_3DELETE许可

我如何在symfony

中做到这一点

1 个答案:

答案 0 :(得分:0)

使用JMS http://jmsyst.com/bundles/JMSSecurityExtraBundle。以下是使用注释的方法:

<?php
use JMS\SecurityExtraBundle\Annotation\Secure;

class YourClassName extends Controller
{
    /**
     * @Secure(roles="ROLE_1, ROLE_ANOTHER")
     */
    public function viewAction() {
    }

    /**
     * @Secure(roles="ROLE_2")
     */
    public function editAction() {
    }

    //....
}

或使用访问控制列表进行高级用例:http://symfony.com/doc/current/cookbook/security/acl.html