/
ilyamikhaylov07
/
integration_solution_course
Обзор
Документация
Войти
/
ilyamikhaylov07
/
integration_solution_course
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
TaskAPI/Services/TokenManager.cs
44 строки
1 KB
Ilya
Init
24 сен 2025, 16:32
24 сен 2025, 16:32
360074e
Код
Авторство
О чём код?
using Microsoft.IdentityModel.Tokens; using System.IdentityModel.Tokens.Jwt; using System.Security.Claims; namespace TaskAPI.Services { public class TokenManager { private readonly SymmetricSecurityKey _securityKey; private readonly string _issuer; private readonly string _audience; public TokenManager(SymmetricSecurityKey securityKey, string issuer, string audience) { _securityKey = securityKey; _issuer = issuer; _audience = audience; } public string GenerateAccessToken(List<Claim> claims) { var accessToken = new JwtSecurityToken( issuer: _issuer, audience: _audience, claims: claims, expires: DateTime.UtcNow.AddHours(2), signingCredentials: new SigningCredentials(_securityKey, SecurityAlgorithms.HmacSha256) ); return new JwtSecurityTokenHandler().WriteToken(accessToken); } public string GenerateRefreshToken(List<Claim> claims) { var refreshToken = new JwtSecurityToken( claims: claims, expires: DateTime.UtcNow.AddDays(7), signingCredentials: new SigningCredentials(_securityKey, SecurityAlgorithms.HmacSha256) ); return new JwtSecurityTokenHandler().WriteToken(refreshToken); } } }