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

Duende Storage

Duende Storage is a relational persistence layer shared by Duende products. IdentityServer adapters connect its configuration and operational store interfaces to the storage layer, so IdentityServer continues to use the same abstractions during protocol processing.

The provider has four parts:

  1. A database-specific package connects Duende Storage to SQL Server, PostgreSQL, Oracle or SQLite.
  2. The storage layer persists entities with versioning, indexing and expiration support.
  3. IdentityServer adapters implement its configuration and operational store interfaces.
  4. Optional administration APIs and schemas let your application manage and extend configuration data.

Choose Duende Storage when you need one or more of these capabilities:

  • Configuration administration through supported service APIs, without writing directly to database tables.
  • Schema-validated custom properties on clients and resources.
  • Consistent querying and optimistic concurrency across supported databases.
  • Storage pools that isolate data for Spaces.
  • A shared persistence model across Duende products.

The Entity Framework Core provider remains a good choice when your application already uses EF Core and your team wants to manage DbContext types, mappings and migrations directly. In-memory stores remain useful for development or deployment-controlled configuration. A custom store gives you complete control when neither built-in approach matches your requirements.

Choose the package that matches your database:

DatabasePackageRegistration
SQL ServerDuende.Storage.MsSqlAddMsSqlStore
PostgreSQLDuende.Storage.PostgreSqlAddPostgreSqlStore
OracleDuende.Storage.OracleAddOracleStore
SQLiteDuende.Storage.SqliteAddSqliteStore