创建 ACL

你可以使用 Phalcon\Acl\Adapter\Memory 类创建 ACL:

$acl = new Phalcon\Acl\Adapter\Memory();

默认情况下,phalcon 允许对尚未定义的资源执行操作,要更改此属性,你可以使用:

$acl->setDefaultAction(Phalcon\Acl::DENY);

角色可以通过两种方式添加 - 使用 Phalcon\Acl\Role 或只是普通字符串:

$roleAdministrator = new Phalcon\Acl\Role('Administrator');
$acl->addRole($roleAdministrator);
$acl->addRole('Customer');

资源也可以通过两种方式添加,你可以将操作添加为单个操作或数组:

$resourceCategories = new Phalcon\Acl\Resource('categories');
$acl->addResource($resourceCategories, 'create');
$acl->addResource('products', ['create', 'update']);