[ 'id' => '100', 'username' => 'admin', 'password' => 'test', 'authKey' => 'test100key', 'accessToken' => '100-token', //'role' => 'admin', ], '101' => [ 'id' => '101', 'username' => 'hr', 'password' => 'test', 'authKey' => 'test101key', 'accessToken' => '101-token', //'role' => 'hr', ], '102' => [ 'id' => '102', 'username' => 'employee', 'password' => 'test', 'authKey' => 'test102key', 'accessToken' => '102-token', //'role' => 'employee', ], ]; public static function tableName() { return 'testUsers'; } /** * @inheritdoc */ public static function findIdentity($id) { return isset(self::$users[$id]) ? new static(self::$users[$id]) : null;/* $dbUser = DbUser::find() ->where([ "id" => $id ]) ->one(); if (!count($dbUser)) { return null; } return new static($dbUser);*/ } /** * @inheritdoc */ public static function findIdentityByAccessToken($token, $type = null) { foreach (self::$users as $user) { if ($user['accessToken'] === $token) { return new static($user); } } return null; } /** * Finds user by username * * @param string $username * @return static|null */ public static function findByUsername($username) { foreach (self::$users as $user) { if (strcasecmp($user['username'], $username) === 0) { return new static($user); } } return null; } /** * @inheritdoc */ public function getId() { return $this->id; } /** * @inheritdoc */ public function getAuthKey() { return $this->authKey; } /** * @inheritdoc */ public function validateAuthKey($authKey) { return $this->authKey === $authKey; } /** * Validates password * * @param string $password password to validate * @return bool if password provided is valid for current user */ public function validatePassword($password) { return $this->password === $password; } }