public async Task <BaseResponse <AccessToken> > CreateTokenByRefreshToken(RefreshTokenViewModelResource refreshTokenViewModel)
        {
            var userClaim = await userService.GetUserByRefreshToken(refreshTokenViewModel.RefreshToken);

            if (userClaim.Item1 != null)
            {
                AccessToken accessToken       = tokenHandler.CreateAccessToken(userClaim.Item1);
                Claim       refreshTokenClaim = new Claim("refreshToken", accessToken.RefreshToken);

                Claim refreshTokenEndDateClaim = new Claim("refreshTokenEndDate", DateTime.Now.AddMinutes(tokenOptions.RefreshTokenexpiration).ToString());
                //userClaim.Item2[0] refrestoken karsilik gelir
                //userClaim.Item2[1] refrestokenEndDateCliam karsilik geliyor
                //userClaim.Item1 applicationUser barindiriyor, userClaim.Item2[0] refresToken demektir
                await userManager.ReplaceClaimAsync(userClaim.Item1, userClaim.Item2[0], refreshTokenClaim);

                await userManager.ReplaceClaimAsync(userClaim.Item1, userClaim.Item2[1], refreshTokenEndDateClaim);

                return(new BaseResponse <AccessToken>(accessToken));
            }
            else
            {
                //kullanici Cikis İslemi gerceklestirmis olabilir
                return(new BaseResponse <AccessToken>("Böyle bir refreshtoken sahip kullanıcı yok"));
            }
        }
Example #2
0
        public async Task <BaseResponse <AccessToken> > RevokeRefreshToken(RefreshTokenViewModelResource refreshTokenViewModel)
        {
            bool result = await userService.RevokeRefreshToken(refreshTokenViewModel.RefreshToken);

            if (result)
            {
                return(new BaseResponse <AccessToken>(new AccessToken()));
            }
            else
            {
                return(new BaseResponse <AccessToken>("İstifadəçi tapılmadı"));
            }
        }
Example #3
0
        public async Task <IActionResult> RevokeRefresToken(RefreshTokenViewModelResource refreshTokenView)
        {
            var response = await this.authenticationService.RevokeRefreshToken(refreshTokenView);

            if (response.Success)
            {
                return(Ok());
            }
            else
            {
                return(BadRequest(response.Message));
            }
        }
        [HttpDelete]// kullanici cikis yapildiğinda calisacaktir
        public async Task <ActionResult> RevokeRefreshToken(RefreshTokenViewModelResource refreshTokenViewModelResource)
        {
            var response = await authenticationService.CreateTokenByRefreshToken(refreshTokenViewModelResource);

            if (response.Success)
            {
                return(Ok(response.Extra));
            }
            else
            {
                return(BadRequest(response.Message));
            }
        }
        public async Task <BaseResponse <AccessToken> > RevokeResfreshToken(RefreshTokenViewModelResource refreshTokenViewModel)
        {
            bool result = await userService.RevokeRefreshToken(refreshTokenViewModel.RefreshToken);

            if (result)
            {
                return(new BaseResponse <AccessToken>(new AccessToken()));
            }
            else
            {
                return(new BaseResponse <AccessToken>("refreshToken veritabanından bulunmuyor"));
            }
        }
        public async Task <BaseResponse <AccessToken> > RevokeRefreshTopken(RefreshTokenViewModelResource refreshTokenViewModel)
        {
            bool result = await userService.RevokeRefreshToken(refreshTokenViewModel.RefreshToken);

            if (result)
            {
                return(new BaseResponse <AccessToken>(new AccessToken()));
            }
            else
            {
                return(new BaseResponse <AccessToken>("Böyle Bir Kullanıcı Yok!"));
            }
        }
Example #7
0
        public async Task <BaseResponse <AccessToken> > CreateAccessTokenByRefreshToken(RefreshTokenViewModelResource refreshTokenViewModel)
        {
            var userClaim = await userService.GetUserByRefreshToken(refreshTokenViewModel.RefreshToken);

            if (userClaim.Item1 != null)
            {
                AccessToken accessToken = tokenHandler.CreateAccessToken(userClaim.Item1);

                Claim refreshTokenClaim        = new Claim("refreshToken", accessToken.RefreshToken);
                Claim refreshTokenEndDateClaim = new Claim("refreshTokenEndDate", DateTime.Now.AddMinutes
                                                               (customTokenOptions.RefreshTokenExpiration).ToString());

                await userManager.ReplaceClaimAsync(userClaim.Item1, userClaim.Item2[0], refreshTokenClaim);

                await userManager.ReplaceClaimAsync(userClaim.Item1, userClaim.Item2[1], refreshTokenEndDateClaim);

                return(new BaseResponse <AccessToken>(accessToken));
            }
            else
            {
                return(new BaseResponse <AccessToken>("Belə bir istifadəçi mövcud deyil"));
            }
        }