Duende IdentityServer v5.0 to v5.1

This upgrade guide covers upgrading from Duende IdentityServer v5.0 to v5.1 (release notes). Fortunately there’s not much to do :)

Step 1: Update NuGet package

In your IdentityServer host project, update the version of the NuGet. For example in your project file:

<PackageReference Include="Duende.IdentityServer" Version="5.0.0" />

would change to:

<PackageReference Include="Duende.IdentityServer" Version="5.1.0" />

Step 2: Update Database Schema (if needed)

If you are using the Duende.IdentityServer.EntityFramework package as the implementation for the database for your operational data, then there is a small database schema update. This includes:

  • A new index on the ConsumedTime column in the PersistedGrants table (more details).

If you’re using EntityFramework Core migrations as the mechanism for managing schema changes over time, the commands below will update those migrations with the new changes. Note that you might need to adjust based on your specific organization of the migration files.

dotnet ef migrations add Update_DuendeIdentityServer_v5_1 -c PersistedGrantDbContext -o Data/Migrations/IdentityServer/PersistedGrantDb

Then to apply those changes to your database:

dotnet ef database update -c PersistedGrantDbContext

Some organizations prefer to use other tools for managing schema changes. You’re free to manage your schema however you see fit, as long as the entities can be successfully mapped. Even if you’re not going to ultimately use Entity Framework migrations to manage your database changes, generating a migration can be a useful development step to get an idea of what needs to be done.

Step 3: Done!

That’s it. Of course, at this point you can and should test that your IdentityServer is updated and working properly.