This component allows to manage ACL lists. An access control list (ACL) is a list of permissions attached to an object. An ACL specifies which users or system processes are granted access to objects, as well as what operations are allowed on given objects.
$acl = new Phalcon\Acl\Adapter\Memory(); //Default action is deny access $acl->setDefaultAction(Phalcon\Acl::DENY); //Create some roles $roleAdmins = new Phalcon\Acl\Role('Administrators', 'Super-User role'); $roleGuests = new Phalcon\Acl\Role('Guests'); //Add "Guests" role to acl $acl->addRole($roleGuests); //Add "Designers" role to acl $acl->addRole('Designers'); //Define the "Customers" resource $customersResource = new Phalcon\Acl\Resource('Customers', 'Customers management'); //Add "customers" resource with a couple of operations $acl->addResource($customersResource, 'search'); $acl->addResource($customersResource, array('create', 'update')); //Set access level for roles into resources $acl->allow('Guests', 'Customers', 'search'); $acl->allow('Guests', 'Customers', 'create'); $acl->deny('Guests', 'Customers', 'update'); //Check whether role has access to the operations $acl->isAllowed('Guests', 'Customers', 'edit'); //Returns 0 $acl->isAllowed('Guests', 'Customers', 'search'); //Returns 1 $acl->isAllowed('Guests', 'Customers', 'create'); //Returns 1
© 2011–2016 Phalcon Framework Team
Licensed under the Creative Commons Attribution License 3.0.
https://docs.phalconphp.com/en/2.0.0/api/Phalcon_Acl.html