forked from gongxuegit/tiku-backend.net
feat: add api security foundation
This commit is contained in:
19
Tiku.Api/Options/JwtOptions.cs
Normal file
19
Tiku.Api/Options/JwtOptions.cs
Normal 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));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user