You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
82 lines
2.3 KiB
82 lines
2.3 KiB
12 years ago
|
<?php
|
||
|
/**
|
||
|
* @link http://www.yiiframework.com/
|
||
|
* @copyright Copyright (c) 2008 Yii Software LLC
|
||
|
* @license http://www.yiiframework.com/license/
|
||
|
*/
|
||
|
|
||
|
namespace yii\web;
|
||
|
|
||
|
/**
|
||
12 years ago
|
* Identity is the interface that should be implemented by a class providing identity information.
|
||
|
*
|
||
|
* This interface can typically be implemented by a user model class. For example, the following
|
||
|
* code shows how to implement this interface by a User ActiveRecord class:
|
||
|
*
|
||
|
* ~~~
|
||
|
* class User extends ActiveRecord implements Identity
|
||
|
* {
|
||
|
* public static function findIdentity($id)
|
||
|
* {
|
||
|
* return static::find($id);
|
||
|
* }
|
||
|
*
|
||
|
* public function getId()
|
||
|
* {
|
||
|
* return $this->id;
|
||
|
* }
|
||
|
*
|
||
|
* public function getAuthKey()
|
||
|
* {
|
||
|
* return $this->authKey;
|
||
|
* }
|
||
|
*
|
||
|
* public function validateAuthKey($authKey)
|
||
|
* {
|
||
|
* return $this->authKey === $authKey;
|
||
|
* }
|
||
|
* }
|
||
|
* ~~~
|
||
12 years ago
|
*
|
||
|
* @author Qiang Xue <qiang.xue@gmail.com>
|
||
|
* @since 2.0
|
||
|
*/
|
||
|
interface Identity
|
||
|
{
|
||
|
/**
|
||
12 years ago
|
* Finds an identity by the given ID.
|
||
|
* @param string|integer $id the ID to be looked for
|
||
|
* @return Identity the identity object that matches the given ID.
|
||
|
* Null should be returned if such an identity cannot be found
|
||
|
* or the identity is not in an active state (disabled, deleted, etc.)
|
||
|
*/
|
||
|
public static function findIdentity($id);
|
||
|
/**
|
||
12 years ago
|
* Returns an ID that can uniquely identify a user identity.
|
||
12 years ago
|
* @return string|integer an ID that uniquely identifies a user identity.
|
||
12 years ago
|
*/
|
||
|
public function getId();
|
||
|
/**
|
||
|
* Returns a key that can be used to check the validity of a given identity ID.
|
||
12 years ago
|
*
|
||
|
* The key should be unique for each individual user, and should be persistent
|
||
|
* so that it can be used to check the validity of the user identity.
|
||
|
*
|
||
|
* The space of such keys should be big enough to defeat potential identity attacks.
|
||
12 years ago
|
*
|
||
|
* This is required if [[User::enableAutoLogin]] is enabled.
|
||
12 years ago
|
* @return string a key that is used to check the validity of a given identity ID.
|
||
12 years ago
|
* @see validateAuthKey()
|
||
|
*/
|
||
|
public function getAuthKey();
|
||
|
/**
|
||
|
* Validates the given auth key.
|
||
12 years ago
|
*
|
||
|
* This is required if [[User::enableAutoLogin]] is enabled.
|
||
12 years ago
|
* @param string $authKey the given auth key
|
||
|
* @return boolean whether the given auth key is valid.
|
||
|
* @see getAuthKey()
|
||
|
*/
|
||
|
public function validateAuthKey($authKey);
|
||
12 years ago
|
}
|