Skip to content
New Livestream: How Banks Protect Their Apps with FAPI 2.0. Register Now!

Storage Providers

Duende IdentityServer abstracts data access behind store interfaces. You choose which provider backs those interfaces.

Configuration and operational data have different lifecycles. You can choose one provider for both or combine providers when your deployment needs different behavior for each kind of data.

ProviderHow It WorksChoose It When
In-memoryKeeps data in the IdentityServer process.You are developing, testing or can redeploy whenever configuration changes. Do not use it for production operational data.
Entity Framework CoreMaps IdentityServer entities to relational tables through Entity Framework Core.Your team already uses EF Core and wants direct control over its contexts, mappings and migrations.
Duende StorageStores versioned entities through a common relational storage layer and supplies administration APIs.You need runtime configuration management, extensible configuration data or Spaces, without building every store yourself.
CustomReplaces IdentityServer store interfaces with your implementations.You need a database or data-access pattern that the built-in providers do not support.

Duende Storage was introduced to give Duende products a shared persistence model. It separates IdentityServer’s store interfaces from database-specific implementations, supplies consistent querying and optimistic concurrency and supports isolated storage pools. The existing providers remain supported and may be a better fit when you prefer their simpler or more direct model.