我有以下情况。
我有 15 种类型的安全角色,比如ROLE_1 , ROLE_2 ..... ROLE_15
现在我有一个复杂的矩阵,其中实体的每个字段对每个角色都有 5 个不同的权限
喜欢
view , delete, readonly, undelete, edit, update
例如,对于ID ROLE_1HAS VIEWPERMISSION
ID ROLE_2READ有权限
ID ROLE_3DELETE有权限
我如何在 symfony 中做到这一点
使用 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