1).` * * @var array */ public $settings = array( 'fields' => array( 'username' => 'username', 'password' => 'password' ), 'userModel' => 'User', 'scope' => array() ); /** * Constructor * * @param array $settings Array of settings to use. */ public function __construct($settings) { $this->settings = Set::merge($this->settings, $settings); } /** * Hash the supplied password using the configured hashing method. * * @param string $password The password to hash. * @return string Hashed string */ public function hash($password) { return Security::hash($password, null, true); } /** * Authenticate a user based on the request information. * * @param CakeRequest $request Request to get authentication information from. * @return mixed Either false on failure, or an array of user data on success. */ abstract public function authenticate(CakeRequest $request); }