OpenID Configuration
The OpenID API uses OpenID configuration for various settings including client IDs, X.509 certificates, endpoints and processing flags.
OpenID configuration may be specified declaratively using JSON or programmatically using the OpenID configuration APIs.
OpenID Configuration Options
The options for specifying OpenID configuration are:
| Approach | When to Use | Key Benefits |
|---|---|---|
| JSON configuration | - Configuration changes infrequently - Configuration can be stored in files - No database-backed configuration is required |
- Simplest approach - Familiar ASP.NET Core configuration model |
| Configuration API | - Configuration changes infrequently - Configuration is stored outside JSON files - Configuration can be loaded at application startup |
- Full programmatic control - Suitable for startup-time initialization |
| IConfigurationResolver | - Configuration changes frequently - Configuration must be resolved dynamically per request or per tenant - Multi-tenant or SaaS scenarios |
- On-demand configuration resolution - Avoids application restarts when configuration changes |
Each approach is valid and, if required, switching between them is relatively straightforward.
If you are unsure which approach to take, we generally recommend JSON configuration unless database-backed or dynamically resolved configuration is required.