feat: port session 11 — Accounts & Directory JWT Store

- Account: full Account class (200 features) with subject mappings,
  connection counting, export/import checks, expiration timers
- DirJwtStore: directory-based JWT storage with sharding and expiry
- AccountResolver: IAccountResolver, MemoryAccountResolver,
  UrlAccountResolver, DirAccountResolver, CacheDirAccountResolver
- AccountTypes: all supporting types (AccountLimits, SConns, ExportMap,
  ImportMap, ServiceExport, StreamExport, ServiceLatency, etc.)
- 34 unit tests (599 total), 234 features complete (IDs 150-349, 793-826)
This commit is contained in:
Joseph Doherty
2026-02-26 15:37:08 -05:00
parent 06779a1f77
commit 12a14ec476
14 changed files with 5297 additions and 66 deletions

View File

@@ -109,7 +109,7 @@ public sealed partial class ServerOptions
public string SystemAccount { get; set; } = string.Empty;
public bool NoSystemAccount { get; set; }
/// <summary>Parsed account objects from config. Mirrors Go opts.Accounts.</summary>
public List<Auth.Account> Accounts { get; set; } = [];
public List<Account> Accounts { get; set; } = [];
public AuthCalloutOpts? AuthCallout { get; set; }
public bool AlwaysEnableNonce { get; set; }
public List<User>? Users { get; set; }