forked from xiongyuxing/tiku-backend.net
20 lines
652 B
C#
20 lines
652 B
C#
using Microsoft.IdentityModel.Tokens;
|
|
using System.Text;
|
|
|
|
namespace Tiku.Api.Options;
|
|
|
|
public sealed class JwtOptions
|
|
{
|
|
public string Issuer { get; set; } = "tiku-backend";
|
|
public string Audience { get; set; } = "tiku-api";
|
|
public string SigningKey { get; set; } = "development-only-tiku-signing-key-change-before-production";
|
|
public int AccessTokenMinutes { get; set; } = 30;
|
|
public int RefreshTokenDays { get; set; } = 30;
|
|
|
|
public SymmetricSecurityKey CreateSecurityKey()
|
|
{
|
|
ArgumentException.ThrowIfNullOrWhiteSpace(SigningKey);
|
|
return new SymmetricSecurityKey(Encoding.UTF8.GetBytes(SigningKey));
|
|
}
|
|
}
|