Class BasicAuthenticate
Basic Authentication adapter for AuthComponent.
Provides Basic HTTP authentication support for AuthComponent. Basic Auth will authenticate users against the configured userModel and verify the username and passwords match. Clients using Basic Authentication must support cookies. Since AuthComponent identifies users based on Session contents, clients using Basic Auth must support cookies.
Using Basic auth
In your controller's components array, add auth + the required settings. {{{ public $components = array( 'Auth' => array( 'authenticate' => array('Basic') ) ); }}}
In your login function just call $this->Auth->login()
without any checks for POST data. This
will send the authentication headers, and trigger the login dialog in the browser/client.
- BaseAuthenticate
- BasicAuthenticate
Since: 2.0
Copyright: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
License: MIT License
Location: Cake/Controller/Component/Auth/BasicAuthenticate.php
Properties summary
-
$settings
publicarray
Settings for this object.
Inherited Properties
Method Summary
-
__construct() public
Constructor, completes configuration for basic authentication. -
authenticate() public
Authenticate a user using basic HTTP auth. Will use the configured User model and attempt a login using basic HTTP auth.
-
getUser() public
Get a user based on information in the request. Used by cookie-less auth for stateless clients. -
loginHeaders() public
Generate the login headers
Method Detail
__construct() public ¶
__construct( ComponentCollection
$collection , array $settings )
Constructor, completes configuration for basic authentication.
Parameters
-
ComponentCollection
$collection - The Component collection used on this request.
- array $settings
- An array of settings.
Overrides
authenticate() public ¶
authenticate( CakeRequest
$request , CakeResponse
$response )
Authenticate a user using basic HTTP auth. Will use the configured User model and attempt a login using basic HTTP auth.
Parameters
-
CakeRequest
$request - The request to authenticate with.
-
CakeResponse
$response - The response to add headers to.
Returns
Either false on failure, or an array of user data on success.
getUser() public ¶
getUser( CakeRequest
$request )
Get a user based on information in the request. Used by cookie-less auth for stateless clients.
Parameters
-
CakeRequest
$request - Request object.
Returns
Either false or an array of user information
Overrides
loginHeaders() public ¶
loginHeaders( )
Generate the login headers
Returns
Headers for logging in.
Methods inherited from BaseAuthenticate
_findUser() protected ¶
_findUser( Mixed $conditions , Mixed $password = null )
Find a user record using the standard options.
The $conditions parameter can be a (string)username or an array containing conditions for Model::find('first'). If the password field is not included in the conditions the password will be returned.
Parameters
- Mixed $conditions
- The username/identifier, or an array of find conditions.
- Mixed $password optional null
- The password, only use if passing as $conditions = 'username'.
Returns
Either false on failure, or an array of user data.
_password() protected ¶
_password( string $password )
Hash the plain text password so that it matches the hashed/encrypted password in the datasource.
Parameters
- string $password
- The plain text password.
Returns
The hashed form of the password.
Properties detail
$settings ¶
Settings for this object.
fields
The fields to use to identify a user by.userModel
The model name of the User, defaults to User.scope
Additional conditions to use when looking up and authenticating users, i.e.array('User.is_active' => 1).
recursive
The value of the recursive key passed to find(). Defaults to 0.contain
Extra models to contain and store in session.realm
The realm authentication is for. Defaults the server name.
array( 'fields' => array( 'username' => 'username', 'password' => 'password' ), 'userModel' => 'User', 'scope' => array(), 'recursive' => 0, 'contain' => null, 'realm' => '', )