# Module: Azaion.Common.Configs.JwtConfig ## Purpose Configuration POCO for JWT token generation parameters, bound from `appsettings.json` section `JwtConfig`. ## Public Interface | Property | Type | Description | |----------|------|-------------| | `Issuer` | `string` | Token issuer claim | | `Audience` | `string` | Token audience claim | | `Secret` | `string` | HMAC-SHA256 signing key | | `TokenLifetimeHours` | `double` | Token expiry duration in hours | ## Internal Logic None — pure data class. ## Dependencies None. ## Consumers - `Program.cs` — reads `JwtConfig` to configure JWT Bearer authentication middleware - `AuthService.CreateToken` — uses Issuer, Audience, Secret, TokenLifetimeHours to build JWT tokens ## Data Models None. ## Configuration Bound via `builder.Configuration.GetSection(nameof(JwtConfig))`. Expected env var: `ASPNETCORE_JwtConfig__Secret`. ## External Integrations None. ## Security `Secret` is the symmetric signing key for all JWT tokens. Must be kept secret and sufficiently long for HMAC-SHA256. ## Tests None.