CakePHP
  • Documentation
    • Book
    • API
    • Videos
    • Reporting Security Issues
    • Privacy Policy
    • Logos & Trademarks
  • Business Solutions
  • Swag
  • Road Trip
  • Team
  • Community
    • Community
    • Get Involved
    • Issues (GitHub)
    • Bakery
    • Featured Resources
    • Training
    • Meetups
    • My CakePHP
    • CakeFest
    • Newsletter
    • Linkedin
    • YouTube
    • Facebook
    • Twitter
    • Mastodon
    • Help & Support
    • Forum
    • Stack Overflow
    • Slack
    • Paid Support
CakePHP

C CakePHP 1.2 API

  • Overview
  • Tree
  • Deprecated
  • Version:
    • 1.2
      • 4.2
      • 4.1
      • 4.0
      • 3.9
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

Classes

  • AclBase
  • AclBehavior
  • AclComponent
  • AclNode
  • AclShell
  • Aco
  • AcoAction
  • AjaxHelper
  • ApcEngine
  • ApiShell
  • App
  • AppController
  • AppHelper
  • AppModel
  • Aro
  • AuthComponent
  • BakeShell
  • BehaviorCollection
  • Cache
  • CacheEngine
  • CacheHelper
  • CakeErrorController
  • CakeLog
  • CakeSchema
  • CakeSession
  • CakeSocket
  • ClassRegistry
  • Component
  • Configure
  • ConnectionManager
  • ConsoleShell
  • ContainableBehavior
  • Controller
  • ControllerTask
  • CookieComponent
  • DataSource
  • DbAcl
  • DbAclSchema
  • DbConfigTask
  • DboAdodb
  • DboDb2
  • DboFirebird
  • DboMssql
  • DboMysql
  • DboMysqlBase
  • DboMysqli
  • DboOdbc
  • DboOracle
  • DboPostgres
  • DboSource
  • DboSqlite
  • DboSybase
  • Debugger
  • EmailComponent
  • ErrorHandler
  • ExtractTask
  • File
  • FileEngine
  • Flay
  • Folder
  • FormHelper
  • Helper
  • HtmlHelper
  • HttpSocket
  • I18n
  • I18nModel
  • i18nSchema
  • I18nShell
  • Inflector
  • IniAcl
  • JavascriptHelper
  • JsHelper
  • JsHelperObject
  • L10n
  • MagicDb
  • MagicFileResource
  • MediaView
  • MemcacheEngine
  • Model
  • ModelBehavior
  • ModelTask
  • Multibyte
  • NumberHelper
  • Object
  • Overloadable
  • Overloadable2
  • PagesController
  • PaginatorHelper
  • Permission
  • PluginTask
  • ProjectTask
  • RequestHandlerComponent
  • Router
  • RssHelper
  • Sanitize
  • Scaffold
  • ScaffoldView
  • SchemaShell
  • Security
  • SecurityComponent
  • SessionComponent
  • SessionHelper
  • SessionsSchema
  • Set
  • Shell
  • String
  • TestSuiteShell
  • TestTask
  • TextHelper
  • ThemeView
  • TimeHelper
  • TranslateBehavior
  • TreeBehavior
  • Validation
  • View
  • ViewTask
  • XcacheEngine
  • Xml
  • XmlElement
  • XmlHelper
  • XmlManager
  • XmlNode
  • XmlTextNode

Functions

  • __enclose
  • make_clean_css
  • mb_encode_mimeheader
  • mb_stripos
  • mb_stristr
  • mb_strlen
  • mb_strpos
  • mb_strrchr
  • mb_strrichr
  • mb_strripos
  • mb_strrpos
  • mb_strstr
  • mb_strtolower
  • mb_strtoupper
  • mb_substr
  • mb_substr_count
  • write_css_cache

Class SecurityComponent

Short description for file.

Long description for file

Object
Extended by SecurityComponent
Package: cake\cake\libs\controller\components
Copyright: Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
License: The MIT License
Location: controller/components/security.php

Properties summary

  • $_action public
    string
    Holds the current action of the controller
  • $allowedActions public
    array

    Actions from which actions of the current controller are allowed to receive requests.

  • $allowedControllers public
    array

    Controllers from which actions of the current controller are allowed to receive requests.

  • $blackHoleCallback public
    string
    The controller method that will be called if this request is black-hole'd
  • $components public
    array
    Other components used by the Security component
  • $disabledFields public
    array
    Form fields to disable
  • $loginOptions public
    array
    Login options for SecurityComponent::requireLogin()
  • $loginUsers public
    array
    An associative array of usernames/passwords used for HTTP-authenticated logins.
  • $requireAuth public
    array
    List of actions that require a valid authentication key
  • $requireDelete public
    array
    List of controller actions for which a DELETE request is required
  • $requireGet public
    array
    List of controller actions for which a GET request is required
  • $requireLogin public
    array
    List of actions that require an HTTP-authenticated login (basic or digest)
  • $requirePost public
    array
    List of controller actions for which a POST request is required
  • $requirePut public
    array
    List of controller actions for which a PUT request is required
  • $requireSecure public
    array
    List of actions that require an SSL-secured connection
  • $validatePost public
    boolean

    Whether to validate POST data. Set to false to disable for data coming from 3rd party services, etc.

Inherited Properties

  • _log

Method Summary

  • _authRequired() public
    Check if authentication is required
  • _callback() public
    Calls a controller callback method
  • _generateToken() public
    Add authentication key for new form posts
  • _loginRequired() public
    Check if login is required
  • _methodsRequired() public
    Check if HTTP methods are required
  • _requireMethod() public
    Sets the actions that require a $method HTTP request, or empty for all actions
  • _secureRequired() public
    Check if access requires secure connection
  • _setLoginDefaults() public
    Sets the default login options for an HTTP-authenticated request
  • _validatePost() public
    Validate submitted form
  • blackHole() public

    Black-hole an invalid request with a 404 error or custom callback. If SecurityComponent::$blackHoleCallback is specified, it will use this callback by executing the method indicated in $error

  • generateDigestResponseHash() public
    Generates a hash to be compared with an HTTP digest-authenticated response
  • loginCredentials() public
    Attempts to validate the login credentials for an HTTP-authenticated request
  • loginRequest() public
    Generates the text of an HTTP-authentication request header from an array of options.
  • parseDigestAuthData() public
    Parses an HTTP digest authentication response, and returns an array of the data, or null on failure.
  • requireAuth() public
    Sets the actions that require an authenticated request, or empty for all actions
  • requireDelete() public
    Sets the actions that require a DELETE request, or empty for all actions
  • requireGet() public
    Sets the actions that require a GET request, or empty for all actions
  • requireLogin() public
    Sets the actions that require an HTTP-authenticated request, or empty for all actions
  • requirePost() public
    Sets the actions that require a POST request, or empty for all actions
  • requirePut() public
    Sets the actions that require a PUT request, or empty for all actions
  • requireSecure() public
    Sets the actions that require a request that is SSL-secured, or empty for all actions
  • startup() public
    Component startup. All security checking happens here.

Method Detail

_authRequired() public ¶

_authRequired( object $controller )

Check if authentication is required

Parameters
object $controller
Instantiating controller
Returns
boolean
true if authentication required

_callback() public ¶

_callback( object $controller , string $method , array $params = array() )

Calls a controller callback method

Parameters
object $controller
Controller to run callback on
string $method
Method to execute
array $params optional array()
Parameters to send to method
Returns
mixed
Controller callback method's response

_generateToken() public ¶

_generateToken( object $controller )

Add authentication key for new form posts

Parameters
object $controller
Instantiating controller
Returns
boolean
Success

_loginRequired() public ¶

_loginRequired( object $controller )

Check if login is required

Parameters
object $controller
Instantiating controller
Returns
boolean
true if login is required

_methodsRequired() public ¶

_methodsRequired( object $controller )

Check if HTTP methods are required

Parameters
object $controller
Instantiating controller
Returns
boolean
true if $method is required

_requireMethod() public ¶

_requireMethod( string $method , array $actions = array() )

Sets the actions that require a $method HTTP request, or empty for all actions

Parameters
string $method
The HTTP method to assign controller actions to
array $actions optional array()
Controller actions to set the required HTTP method to.

_secureRequired() public ¶

_secureRequired( object $controller )

Check if access requires secure connection

Parameters
object $controller
Instantiating controller
Returns
boolean
true if secure connection required

_setLoginDefaults() public ¶

_setLoginDefaults( array $options )

Sets the default login options for an HTTP-authenticated request

Parameters
array $options
Default login options

_validatePost() public ¶

_validatePost( object $controller )

Validate submitted form

Parameters
object $controller
Instantiating controller
Returns
boolean
true if submitted form is valid

blackHole() public ¶

blackHole( object $controller , string $error = '' )

Black-hole an invalid request with a 404 error or custom callback. If SecurityComponent::$blackHoleCallback is specified, it will use this callback by executing the method indicated in $error

Parameters
object $controller
Instantiating controller
string $error optional ''
Error method
Returns
mixed
If specified, controller blackHoleCallback's response, or no return otherwise
See
SecurityComponent::$blackHoleCallback

generateDigestResponseHash() public ¶

generateDigestResponseHash( array $data )

Generates a hash to be compared with an HTTP digest-authenticated response

Parameters
array $data
HTTP digest response data, as parsed by SecurityComponent::parseDigestAuthData()
Returns
string
Digest authentication hash
See
SecurityComponent::parseDigestAuthData()

loginCredentials() public ¶

loginCredentials( string $type = null )

Attempts to validate the login credentials for an HTTP-authenticated request

Parameters
string $type optional null
Either 'basic', 'digest', or null. If null/empty, will try both.
Returns
mixed
If successful, returns an array with login name and password, otherwise null.

loginRequest() public ¶

loginRequest( array $options = array() )

Generates the text of an HTTP-authentication request header from an array of options.

Parameters
array $options optional array()
Set of options for header
Returns
string
HTTP-authentication request header

parseDigestAuthData() public ¶

parseDigestAuthData( string $digest )

Parses an HTTP digest authentication response, and returns an array of the data, or null on failure.

Parameters
string $digest
Digest authentication response
Returns
array
Digest authentication parameters

requireAuth() public ¶

requireAuth( )

Sets the actions that require an authenticated request, or empty for all actions

requireDelete() public ¶

requireDelete( )

Sets the actions that require a DELETE request, or empty for all actions

requireGet() public ¶

requireGet( )

Sets the actions that require a GET request, or empty for all actions

requireLogin() public ¶

requireLogin( )

Sets the actions that require an HTTP-authenticated request, or empty for all actions

requirePost() public ¶

requirePost( )

Sets the actions that require a POST request, or empty for all actions

requirePut() public ¶

requirePut( )

Sets the actions that require a PUT request, or empty for all actions

requireSecure() public ¶

requireSecure( )

Sets the actions that require a request that is SSL-secured, or empty for all actions

startup() public ¶

startup( object $controller )

Component startup. All security checking happens here.

Parameters
object $controller
Instantiating controller

Methods inherited from Object

Object() public ¶

Object( )

A hack to support __construct() on PHP 4 Hint: descendant classes have no PHP4 class_name() constructors, so this constructor gets called first and calls the top-layer __construct() which (if present) should call parent::__construct()

Returns
Object

__construct() public ¶

__construct( )

Class constructor, overridden in descendant classes.

__openPersistent() public ¶

__openPersistent( string $name , string $type = null )

Open the persistent class file for reading Used by Object::_persist()

Parameters
string $name
Name of persisted class
string $type optional null
Type of persistance (e.g: registry)

_persist() public ¶

_persist( string $name , string $return , $object , $type = null )

Checks for a persistent class file, if found file is opened and true returned If file is not found a file is created and false returned If used in other locations of the model you should choose a unique name for the persistent file There are many uses for this method, see manual for examples

Parameters
string $name
name of the class to persist
string $return
$object the object to persist
$object
$type optional null
Returns
boolean
Success

_savePersistent() public ¶

_savePersistent( string $name , object $object )

You should choose a unique name for the persistent file

There are many uses for this method, see manual for examples

Parameters
string $name
name used for object to cache
object $object
the object to persist
Returns
boolean
true on save, throws error if file can not be created

_set() public ¶

_set( array $properties = array() )

Allows setting of multiple properties of the object in a single line of code.

Parameters
array $properties optional array()
An associative array containing properties and corresponding values.

_stop() public ¶

_stop( $status = 0 )

Stop execution of the current script

Parameters
$status optional 0
http://php.net/exit for values

cakeError() public ¶

cakeError( string $method , array $messages = array() )

Used to report user friendly errors. If there is a file app/error.php or app/app_error.php this file will be loaded error.php is the AppError class it should extend ErrorHandler class.

Parameters
string $method
Method to be called in the error class (AppError or ErrorHandler classes)
array $messages optional array()
Message that is to be displayed by the error class
Returns
error
message

dispatchMethod() 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, and improves performance by using straight method calls in most cases.

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

log() public ¶

log( string $msg , integer $type = LOG_ERROR )

API for logging events.

Parameters
string $msg
Log message
integer $type optional LOG_ERROR
Error type constant. Defined in app/config/core.php.
Returns
boolean
Success of log write

requestAction() public ¶

requestAction( mixed $url , array $extra = array() )

Calls a controller's method from any location.

Parameters
mixed $url
String or array-based url.
array $extra optional array()
if array includes the key "return" it sets the AutoRender to true.
Returns
mixed

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


toString() public ¶

toString( )

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

Returns
string
The name of this class

Properties detail

$_action ¶

public string

Holds the current action of the controller

null

$allowedActions ¶

public array

Actions from which actions of the current controller are allowed to receive requests.

See
SecurityComponent::requireAuth()
array()

$allowedControllers ¶

public array

Controllers from which actions of the current controller are allowed to receive requests.

See
SecurityComponent::requireAuth()
array()

$blackHoleCallback ¶

public string

The controller method that will be called if this request is black-hole'd

null

$components ¶

public array

Other components used by the Security component

array('RequestHandler', 'Session')

$disabledFields ¶

public array

Form fields to disable

array()

$loginOptions ¶

public array

Login options for SecurityComponent::requireLogin()

See
SecurityComponent::requireLogin()
array('type' => '', 'prompt' => null)

$loginUsers ¶

public array

An associative array of usernames/passwords used for HTTP-authenticated logins.

See
SecurityComponent::requireLogin()
array()

$requireAuth ¶

public array

List of actions that require a valid authentication key

See
SecurityComponent::requireAuth()
array()

$requireDelete ¶

public array

List of controller actions for which a DELETE request is required

See
SecurityComponent::requireDelete()
array()

$requireGet ¶

public array

List of controller actions for which a GET request is required

See
SecurityComponent::requireGet()
array()

$requireLogin ¶

public array

List of actions that require an HTTP-authenticated login (basic or digest)

See
SecurityComponent::requireLogin()
array()

$requirePost ¶

public array

List of controller actions for which a POST request is required

See
SecurityComponent::requirePost()
array()

$requirePut ¶

public array

List of controller actions for which a PUT request is required

See
SecurityComponent::requirePut()
array()

$requireSecure ¶

public array

List of actions that require an SSL-secured connection

See
SecurityComponent::requireSecure()
array()

$validatePost ¶

public boolean

Whether to validate POST data. Set to false to disable for data coming from 3rd party services, etc.

true
OpenHub
Rackspace
Rackspace
  • Business Solutions
  • Showcase
  • Documentation
  • Book
  • API
  • Videos
  • Reporting Security Issues
  • Privacy Policy
  • Logos & Trademarks
  • Community
  • Get Involved
  • Issues (GitHub)
  • Bakery
  • Featured Resources
  • Training
  • Meetups
  • My CakePHP
  • CakeFest
  • Newsletter
  • Linkedin
  • YouTube
  • Facebook
  • Twitter
  • Mastodon
  • Help & Support
  • Forum
  • Stack Overflow
  • Slack
  • Paid Support

Generated using CakePHP API Docs