Ejemplo n.º 1
0
        public async Task <LogInResponse> LogInAsync(string userRole)
        {
            var refreshToken = _refreshTokenProvider.GetRefreshToken(DateTime.Now.AddMinutes(_config.RefreshTokenExpHours));

            _claims.Add("role", userRole);

            var accessToken = _accessTokenProvider.GetAccessToken(DateTime.Now.AddMinutes(_config.AccessTokenExpMinutes), _claims);

            //TODO Apply CQRS
            _tokensRepository.AddTokenAsync(await refreshToken, userRole);

            return(new LogInResponse()
            {
                AccessToken = accessToken,
                RefreshToken = await refreshToken
            });
        }