namespace ZB.MOM.WW.OtOpcUa.Security.Jwt;

public sealed class JwtOptions
{
    public const string SectionName = "Security:Jwt";
    public const int MinSigningKeyBytes = 32;

    /// <summary>HS256 signing key. Must be at least 32 bytes (256 bits) UTF-8.</summary>
    public string SigningKey { get; set; } = string.Empty;

    /// <summary>Gets or sets the JWT issuer identifier.</summary>
    public string Issuer { get; set; } = "otopcua";
    /// <summary>Gets or sets the JWT audience identifier.</summary>
    public string Audience { get; set; } = "otopcua";

    /// <summary>Default token expiry. Mirrors ScadaLink (15 min).</summary>
    public int ExpiryMinutes { get; set; } = 15;
}
