public async Task DeactivateAllTokens(string token) { JwtSecurityToken stoken = ValidateToken(token); ActiveRefreshToken tkn = (await _activeRefreshTokensGR.GetAllIncludeAsync((x) => x.Jti == stoken.Id, (x) => x.User)).FirstOrDefault(); if (tkn == null) { throw new ClientException("inc-token"); } await _activeRefreshTokensGR.DeleteAsync((x) => x.UserId == tkn.UserId); }
// Deactivating public async Task DeactivateToken(string token) { JwtSecurityToken stoken = ValidateToken(token); ActiveRefreshToken tkn = await _activeRefreshTokensGR.FindAsync(stoken.Id); if (tkn == null) { throw new ClientException("inc-token"); } await _activeRefreshTokensGR.DeleteAsync(tkn); }
// base methods public async Task <LoggedTokensDto> RefreshToken(string token, string uuid) { JwtSecurityToken to = ValidateRefreshToken(token); ActiveRefreshToken activeJwtRefreshToken = _activeRefreshTokensGR.GetAll((x) => x.Jti == to.Id).FirstOrDefault(); if (activeJwtRefreshToken == null) { throw new ClientException("inc-refresh-token"); } if (activeJwtRefreshToken.UUID != uuid) { throw new ClientException("inc-uuid"); } await _activeRefreshTokensGR.DeleteAsync(activeJwtRefreshToken); var ttoken = await Login(activeJwtRefreshToken.UserId, activeJwtRefreshToken.UUID); _userConnectionService.UpdateUserToken(to.Id, ttoken.Token); return(ttoken); }