Class IniAcl

IniAcl implements an access control system using an INI file. An example of the ini file used can be found in /config/acl.ini.php.

Object
Extended by IniAcl implements AclInterface
Package: Cake\Controller\Component\Acl
Copyright: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
License: MIT License
Located at Cake/Controller/Component/Acl/IniAcl.php

Method Detail

allowsource public

allow( string $aro , string $aco , string $action "*" )

No op method, allow cannot be done with IniAcl

Parameters

string $aro
ARO The requesting object identifier.
string $aco
ACO The controlled object identifier.
string $action optional "*"
Action (defaults to *)

Returns

boolean
Success

Implementation of

AclInterface::allow()

arrayTrimsource public

arrayTrim( array $array )

Removes trailing spaces on all array elements (to prepare for searching)

Parameters

array $array
Array to trim

Returns

array
Trimmed array

checksource public

check( string $aro , string $aco , string $action null )

Main ACL check function. Checks to see if the ARO (access request object) has access to the ACO (access control object).Looks at the acl.ini.php file for permissions (see instructions in /config/acl.ini.php).

Parameters

string $aro
ARO
string $aco
ACO
string $action optional null
Action

Returns

boolean
Success

Implementation of

AclInterface::check()

denysource public

deny( string $aro , string $aco , string $action "*" )

No op method, deny cannot be done with IniAcl

Parameters

string $aro
ARO The requesting object identifier.
string $aco
ACO The controlled object identifier.
string $action optional "*"
Action (defaults to *)

Returns

boolean
Success

Implementation of

AclInterface::deny()

inheritsource public

inherit( string $aro , string $aco , string $action "*" )

No op method, inherit cannot be done with IniAcl

Parameters

string $aro
ARO The requesting object identifier.
string $aco
ACO The controlled object identifier.
string $action optional "*"
Action (defaults to *)

Returns

boolean
Success

Implementation of

AclInterface::inherit()

initializesource public

initialize( Component $component )

Initialize method

Parameters

Component $component
The AclComponent instance.

Implementation of

AclInterface::initialize()

readConfigFilesource public

readConfigFile( string $filename )

Parses an INI file and returns an array that reflects the INI file's section structure. Double-quote friendly.

Parameters

string $filename
File

Returns

array
INI section structure

Methods inherited from Object

__constructsource public

__construct( )

Constructor, no-op

_mergeVarssource 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.

_setsource 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.

_stopsource 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

dispatchMethodsource 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

mixed
Returns the result of the method call

logsource 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

boolean
Success of log write

requestActionsource 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

mixed
Boolean true or false on success/failure, or contents of rendered action if 'return' is set in $extra.

toStringsource public

toString( )

Object-to-string conversion. Each class can override this method as necessary.

Returns

string
The name of this class

Properties summary

$configsource

public array

Array with configuration, parsed from ini file

null

$userPathsource

public string

The Hash::extract() path to the user/aro identifier in the acl.ini file. This path will be used to extract the string representation of a user used in the ini file.

'User.username'

© 2005–2016 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.
http://api.cakephp.org/2.7/class-IniAcl.html