public static string GenerateResetToken(UserReadDTO user, TokenProviderOption UserTokenOption) { DateTime now = DateTime.Now; var resetJwt = new JwtSecurityToken(UserTokenOption.Issuer, UserTokenOption.Audience, claims: GetTokenClaims(user, now), notBefore: now, expires: now.Add(UserTokenOption.ResetExpiration), signingCredentials: UserTokenOption.SigningCredentials); var encodedResetJwt = new JwtSecurityTokenHandler().WriteToken(resetJwt); return(encodedResetJwt); }
public static TokenResponse GenerateTokens(UserReadDTO user, TokenProviderOption UserTokenOption) { DateTime now = DateTime.Now; var accessJwt = new JwtSecurityToken(UserTokenOption.Issuer, UserTokenOption.Audience, claims: GetTokenClaims(user, DateTime.Now), notBefore: DateTime.Now, expires: DateTime.Now.Add(UserTokenOption.AccessExpiration), signingCredentials: UserTokenOption.SigningCredentials); var encodedAccessJwt = new JwtSecurityTokenHandler().WriteToken(accessJwt); var refreshJwt = new JwtSecurityToken(UserTokenOption.Issuer, UserTokenOption.Audience, claims: GetTokenClaims(user, now), notBefore: now, expires: now.Add(UserTokenOption.RefreshExpiration), signingCredentials: UserTokenOption.SigningCredentials); var encodedRefreshJwt = new JwtSecurityTokenHandler().WriteToken(refreshJwt); return(new TokenResponse { AccessToken = encodedAccessJwt, AccessTokenExpiresIn = (int)UserTokenOption.AccessExpiration.TotalSeconds, RefreshToken = encodedRefreshJwt, RefreshTokenExpiresIn = (int)UserTokenOption.RefreshExpiration.TotalSeconds }); }