|
|
@@ -103,10 +103,12 @@ class BrandAuth extends User {
|
|
|
$class = $this->identityClass;
|
|
|
$userId = $this->_userId = $class::findIdentityByAccessToken($token, $type);
|
|
|
if ($userId) {
|
|
|
+ // 使用Redis::key方法加密token
|
|
|
+ $redisKey = Redis::key($token);
|
|
|
$this->_userInfo = [
|
|
|
'id' => $userId,
|
|
|
- 'userName' => Yii::$app->tokenRedis->hget($token, 'USER_NAME'),
|
|
|
- 'accessTokenUpdatedAt' => Yii::$app->tokenRedis->hget($token, 'TOKEN_UPDATED_AT'),
|
|
|
+ 'userName' => Yii::$app->tokenRedis->hget($redisKey, 'USER_NAME'),
|
|
|
+ 'accessTokenUpdatedAt' => Yii::$app->tokenRedis->hget($redisKey, 'TOKEN_UPDATED_AT'),
|
|
|
'ip' => Yii::$app->getRequest()->getUserIP(),
|
|
|
];
|
|
|
return $userId;
|
|
|
@@ -155,7 +157,9 @@ class BrandAuth extends User {
|
|
|
if (!$refreshToken) {
|
|
|
return false;
|
|
|
}
|
|
|
- $userId = Yii::$app->tokenRedis->hget($refreshToken, 'ID');
|
|
|
+ // 使用Redis::key方法加密token
|
|
|
+ $redisKey = Redis::key($refreshToken);
|
|
|
+ $userId = Yii::$app->tokenRedis->hget($redisKey, 'ID');
|
|
|
if (!$userId) {
|
|
|
return false;
|
|
|
}
|
|
|
@@ -175,7 +179,9 @@ class BrandAuth extends User {
|
|
|
if (!$refreshToken) {
|
|
|
return false;
|
|
|
}
|
|
|
- $userId = Yii::$app->tokenRedis->hget($refreshToken, 'ID');
|
|
|
+ // 使用Redis::key方法加密token
|
|
|
+ $redisKey = Redis::key($refreshToken);
|
|
|
+ $userId = Yii::$app->tokenRedis->hget($redisKey, 'ID');
|
|
|
if (!$userId) {
|
|
|
return false;
|
|
|
}
|
|
|
@@ -193,7 +199,9 @@ class BrandAuth extends User {
|
|
|
if (!$refreshToken) {
|
|
|
return false;
|
|
|
}
|
|
|
- $userId = Yii::$app->tokenRedis->hget($refreshToken, 'ID');
|
|
|
+ // 使用Redis::key方法加密token
|
|
|
+ $redisKey = Redis::key($refreshToken);
|
|
|
+ $userId = Yii::$app->tokenRedis->hget($redisKey, 'ID');
|
|
|
if (!$userId) {
|
|
|
return false;
|
|
|
}
|
|
|
@@ -249,7 +257,9 @@ class BrandAuth extends User {
|
|
|
throw new HttpException(500, 'token更新失败', 500);
|
|
|
}
|
|
|
// 查找TOKEN中是否有同一用户产生的垃圾token,有的话就清除
|
|
|
- Yii::$app->tokenRedis->del($oldToken);
|
|
|
+ if ($oldToken) {
|
|
|
+ Yii::$app->tokenRedis->del(Redis::key($oldToken));
|
|
|
+ }
|
|
|
|
|
|
$identity = $this->_apiIdentity;
|
|
|
if (!$this->_apiIdentity) {
|
|
|
@@ -258,11 +268,12 @@ class BrandAuth extends User {
|
|
|
}
|
|
|
$identity = $identityClass::findIdentity($userId);
|
|
|
}
|
|
|
- // 把 accessToken 当做key存入redis中内容为会员的ID和用户名
|
|
|
- Yii::$app->tokenRedis->hset($token, 'ID', $identity['ID']);
|
|
|
- Yii::$app->tokenRedis->hset($token, 'USER_NAME', $identity['USER_NAME']);
|
|
|
- Yii::$app->tokenRedis->hset($token, 'TOKEN_UPDATED_AT', $userTokenModel->$updateField);
|
|
|
- Yii::$app->tokenRedis->expire($token, $expiresIn);
|
|
|
+ // 把 accessToken 当做key存入redis中内容为会员的ID和用户名,使用Redis::key方法加密
|
|
|
+ $redisKey = Redis::key($token);
|
|
|
+ Yii::$app->tokenRedis->hset($redisKey, 'ID', $identity['ID']);
|
|
|
+ Yii::$app->tokenRedis->hset($redisKey, 'USER_NAME', $identity['USER_NAME']);
|
|
|
+ Yii::$app->tokenRedis->hset($redisKey, 'TOKEN_UPDATED_AT', $userTokenModel->$updateField);
|
|
|
+ Yii::$app->tokenRedis->expire($redisKey, $expiresIn);
|
|
|
|
|
|
// 标记为快速登录的会员
|
|
|
if (self::$_isQuicklyLogin) {
|