feat: add api security foundation

This commit is contained in:
xiong
2026-07-26 12:46:42 +08:00
parent f31977ef9a
commit e8b03c57bc
20 changed files with 436 additions and 23 deletions

View File

@@ -0,0 +1,19 @@
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));
}
}