Exemple #1
0
        public async Task <AccessToken> GetAccessTokenAsync(AccessTokenRequest request)
        {
            //TODO Implement methods for token validation and getting role - introduce SINGLE RESPONSIBILITY
            var userRole = await _tokensRepository.GetTokenAsync(request.RefreshToken);

            if (userRole.IsNullOrEmpty)
            {
                throw new ArgumentException(nameof(request.RefreshToken));
            }


            _claims.Add("role", userRole.ToString());
            var result = _accessTokenProvider.GetAccessToken(DateTime.Now.AddHours(_config.AccessTokenExpMinutes), _claims);

            return(result);
        }