Class BaseAuthorize
Abstract base authorization adapter for AuthComponent.
Direct Subclasses
Package: Cake\Controller\Component\Auth
Since: 2.0
See: AuthComponent::$authenticate
Copyright: Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
License: MIT License
Location: Cake/Controller/Component/Auth/BaseAuthorize.php
Properties summary
-
$_Collection
protected -
$_Controller
protected -
$settings
publicSettings for authorize objects.array
Method Summary
- __construct() publicConstructor
- action() public
Get the action path for a given request. Primarily used by authorize objects that need to get information about the plugin, controller, and action being invoked.
- Checks user authorization.
- controller() publicAccessor to the controller object.
- mapActions() publicMaps crud actions to actual action names. Used to modify or get the current mapped actions.
Method Detail
__construct()source public
__construct( ComponentCollection $collection , string $settings array() )
Constructor
Parameters
-
ComponentCollection
$collection
- The controller for this request.
- string
$settings
optional array() - An array of settings. This class does not use any settings.
action()source public
action( CakeRequest $request , string $path '/:plugin/:controller/:action' )
Get the action path for a given request. Primarily used by authorize objects that need to get information about the plugin, controller, and action being invoked.
Parameters
-
CakeRequest
$request
- The request a path is needed for.
- string
$path
optional '/:plugin/:controller/:action' - Path format.
Returns
stringthe action path for the given request.
authorize()source abstract public
authorize( array $user , CakeRequest $request )
Checks user authorization.
Parameters
- array
$user
- Active user data
-
CakeRequest
$request
- Request instance.
Returns
booleancontroller()source public
controller( Controller $controller null )
Accessor to the controller object.
Parameters
-
Controller
$controller
optional null - null to get, a controller to set.
Returns
mixedThrows
CakeException
mapActions()source public
mapActions( array $map array() )
Maps crud actions to actual action names. Used to modify or get the current mapped actions.
Create additional mappings for a standard CRUD operation:
$this->Auth->mapActions(array('create' => array('add', 'register'));
Or equivalently:
$this->Auth->mapActions(array('register' => 'create', 'add' => 'create'));
Create mappings for custom CRUD operations:
$this->Auth->mapActions(array('range' => 'search'));
You can use the custom CRUD operations to create additional generic permissions that behave like CRUD operations. Doing this will require additional columns on the permissions lookup. For example if one wanted an additional search CRUD operation one would create and additional column '_search' in the aros_acos table. One could create a custom admin CRUD operation for administration functions similarly if needed.
Parameters
- array
$map
optional array() - Either an array of mappings, or undefined to get current values.
Returns
mixedEither the current mappings or null when setting.
See
AuthComponent::mapActions()Properties detail
$_Collectionsource
protected ComponentCollection
Component collection instance for getting more components.
$settingssource
public array
Settings for authorize objects.
-
actionPath
- The path to ACO nodes that contains the nodes for controllers. Used as a prefix when calling $this->action(); -
actionMap
- Action -> crud mappings. Used by authorization objects that want to map actions to CRUD roles. -
userModel
- Model name that ARO records can be found under. Defaults to 'User'.
array( 'actionPath' => null, 'actionMap' => array( 'index' => 'read', 'add' => 'create', 'edit' => 'update', 'view' => 'read', 'delete' => 'delete', 'remove' => 'delete' ), 'userModel' => 'User' )
© 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-BaseAuthorize.html