refactor: 移除 Session 架构下已无用的 TokenVersion 即时吊销机制
- 删除 UserRepo.IncrementTokenVersion/FindTokenVersion 方法 - 从 userAuthStore/userAdminStore 接口移除 IncrementTokenVersion - 删除 middleware.tokenVersionStore 接口(中间件不再查询 token_version) - auth_service: DeleteAccount/InvalidateSessions 仅调用 DestroyByUID - admin_service: UpdateUserStatus/ResetUserToken 仅调用 DestroyByUID - FindByIDForAuth/FindByIDUnscoped Select 移除 token_version 列 - 新架构下登出/改密/封禁统一走 sessionManager.DestroyByUID,无需 token_version
This commit is contained in:
@ -95,21 +95,15 @@ func (s *AdminService) UpdateUserStatus(operatorUID, targetUID uint, newStatus s
|
||||
return err
|
||||
}
|
||||
}
|
||||
// 修改状态必须立刻让已有 session 失效 + 递增 token_version(向后兼容)
|
||||
if err := s.sessionManager.DestroyByUID(target.ID); err != nil {
|
||||
return err
|
||||
}
|
||||
return s.userRepo.IncrementTokenVersion(target.ID)
|
||||
// 修改状态必须立刻让已有 session 失效
|
||||
return s.sessionManager.DestroyByUID(target.ID)
|
||||
})
|
||||
}
|
||||
|
||||
// ResetUserToken 强制下线:销毁所有 session + 递增 token_version
|
||||
// ResetUserToken 强制下线:销毁所有 session
|
||||
func (s *AdminService) ResetUserToken(operatorUID, targetUID uint) error {
|
||||
return s.checkAndOperate(operatorUID, targetUID, func(_ *model.User, target *model.User) error {
|
||||
if err := s.sessionManager.DestroyByUID(target.ID); err != nil {
|
||||
return err
|
||||
}
|
||||
return s.userRepo.IncrementTokenVersion(target.ID)
|
||||
return s.sessionManager.DestroyByUID(target.ID)
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user