Class PhpAcl
PhpAcl implements an access control system using a plain PHP configuration file. An example file can be found in app/Config/acl.php
- CakeObject
- PhpAcl implements AclInterface
Copyright: Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
License: MIT License
Location: Cake/Controller/Component/Acl/PhpAcl.php
Constants summary
-
boolean
true
-
boolean
false
Properties summary
-
$Aco
public -
$Aro
public -
$options
publicarray
Options: - policy: determines behavior of the check method. Deny policy needs explicit allow rules, allow policy needs explicit deny rules - config: absolute path to config file that contains the acl rules (@see app/Config/acl.php)
Method Summary
- __construct() publicConstructor
- allow() publicNo op method, allow cannot be done with PhpAcl
- build() publicbuild and setup internal ACL representation
- check() public
Main ACL check function. Checks to see if the ARO (access request object) has access to the ACO (access control object).
- deny() publicdeny ARO access to ACO
- inherit() publicNo op method
- initialize() publicInitialize method
Method Detail
__construct()source public
__construct( )
Constructor
Sets a few default settings up.
Overrides
CakeObject::__construct()
allow()source public
allow( string $aro , string $aco , string $action "*" )
No op method, allow cannot be done with PhpAcl
Parameters
- string
$aro
- ARO The requesting object identifier.
- string
$aco
- ACO The controlled object identifier.
- string
$action
optional "*" - Action (defaults to *)
Returns
booleanSuccess
Implementation of
AclInterface::allow()
build()source public
build( array $config )
build and setup internal ACL representation
Parameters
- array
$config
- configuration array, see docs
Throws
AclException
When required keys are missing.
check()source public
check( string $aro , string $aco , string $action "*" )
Main ACL check function. Checks to see if the ARO (access request object) has access to the ACO (access control object).
Parameters
- string
$aro
- ARO
- string
$aco
- ACO
- string
$action
optional "*" - Action
Returns
booleantrue if access is granted, false otherwise
Implementation of
AclInterface::check()
deny()source public
deny( string $aro , string $aco , string $action "*" )
deny ARO access to ACO
Parameters
- string
$aro
- ARO The requesting object identifier.
- string
$aco
- ACO The controlled object identifier.
- string
$action
optional "*" - Action (defaults to *)
Returns
booleanSuccess
Implementation of
AclInterface::deny()
inherit()source public
inherit( string $aro , string $aco , string $action "*" )
No op method
Parameters
- string
$aro
- ARO The requesting object identifier.
- string
$aco
- ACO The controlled object identifier.
- string
$action
optional "*" - Action (defaults to *)
Returns
booleanSuccess
Implementation of
AclInterface::inherit()
initialize()source public
initialize( Component $Component )
Initialize method
Parameters
-
Component
$Component
- Component instance
Implementation of
AclInterface::initialize()
Methods inherited from CakeObject
_mergeVars()source protected
_mergeVars( array $properties , string $class , boolean $normalize true )
Merges this objects $property with the property in $class' definition. This classes value for the property will be merged on top of $class'
This provides some of the DRY magic CakePHP provides. If you want to shut it off, redefine this method as an empty function.
Parameters
- array
$properties
- The name of the properties to merge.
- string
$class
- The class to merge the property with.
- boolean
$normalize
optional true - Set to true to run the properties through Hash::normalize() before merging.
_set()source protected
_set( array $properties array() )
Allows setting of multiple properties of the object in a single line of code. Will only set properties that are part of a class declaration.
Parameters
- array
$properties
optional array() - An associative array containing properties and corresponding values.
_stop()source protected
_stop( integer|string $status 0 )
Stop execution of the current script. Wraps exit() making testing easier.
Parameters
- integer|string
$status
optional 0 - see http://php.net/exit for values
dispatchMethod()source public
dispatchMethod( string $method , array $params array() )
Calls a method on this object with the given parameters. Provides an OO wrapper for call_user_func_array
Parameters
- string
$method
- Name of the method to call
- array
$params
optional array() - Parameter list to use when calling $method
Returns
mixedReturns the result of the method call
log()source public
log( string $msg , integer $type LOG_ERR , null|string|array $scope null )
Convenience method to write a message to CakeLog. See CakeLog::write() for more information on writing to logs.
Parameters
- string
$msg
- Log message
- integer
$type
optional LOG_ERR - Error type constant. Defined in app/Config/core.php.
- null|string|array
$scope
optional null The scope(s) a log message is being created in. See CakeLog::config() for more information on logging scopes.
Returns
booleanSuccess of log write
requestAction()source public
requestAction( string|array $url , array $extra array() )
Calls a controller's method from any location. Can be used to connect controllers together or tie plugins into a main application. requestAction can be used to return rendered views or fetch the return value from controller actions.
Under the hood this method uses Router::reverse() to convert the $url parameter into a string URL. You should use URL formats that are compatible with Router::reverse()
Passing POST and GET data
POST and GET data can be simulated in requestAction. Use $extra['url']
for GET data. The $extra['data']
parameter allows POST data simulation.
Parameters
- string|array
$url
String or array-based URL. Unlike other URL arrays in CakePHP, this URL will not automatically handle passed and named arguments in the $url parameter.
- array
$extra
optional array() if array includes the key "return" it sets the AutoRender to true. Can also be used to submit GET/POST data, and named/passed arguments.
Returns
mixedBoolean true or false on success/failure, or contents of rendered action if 'return' is set in $extra.
toString()source public
toString( )
CakeObject-to-string conversion. Each class can override this method as necessary.
Returns
stringThe name of this class
Properties detail
$optionssource
public array
Options: - policy: determines behavior of the check method. Deny policy needs explicit allow rules, allow policy needs explicit deny rules - config: absolute path to config file that contains the acl rules (@see app/Config/acl.php)
array()
© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/2.10/class-PhpAcl.html