IdentityFlow.Security.DataProtection 0.1.0-alpha.20260620170646

This is a prerelease version of IdentityFlow.Security.DataProtection.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package IdentityFlow.Security.DataProtection --version 0.1.0-alpha.20260620170646
                    
NuGet\Install-Package IdentityFlow.Security.DataProtection -Version 0.1.0-alpha.20260620170646
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="IdentityFlow.Security.DataProtection" Version="0.1.0-alpha.20260620170646" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="IdentityFlow.Security.DataProtection" Version="0.1.0-alpha.20260620170646" />
                    
Directory.Packages.props
<PackageReference Include="IdentityFlow.Security.DataProtection" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add IdentityFlow.Security.DataProtection --version 0.1.0-alpha.20260620170646
                    
#r "nuget: IdentityFlow.Security.DataProtection, 0.1.0-alpha.20260620170646"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package IdentityFlow.Security.DataProtection@0.1.0-alpha.20260620170646
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=IdentityFlow.Security.DataProtection&version=0.1.0-alpha.20260620170646&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=IdentityFlow.Security.DataProtection&version=0.1.0-alpha.20260620170646&prerelease
                    
Install as a Cake Tool

IdentityFlow

IdentityFlow is a modular .NET authentication library for apps that want owned auth flows without tying domain data to an application-specific identity schema.

It provides composable packages for credentials, two-factor recovery, passkeys, external providers, EF Core stores, ASP.NET Core endpoints, cookie/BFF sessions, and OpenIddict hosting.

Install

Use the meta-package for the default stack:

dotnet add package IdentityFlow

Or install only the modules your app needs. A typical ASP.NET Core + EF PostgreSQL host that uses the convenience builder starts with:

dotnet add package IdentityFlow.Core
dotnet add package IdentityFlow.Hosting.AspNetCore
dotnet add package IdentityFlow.Credentials.Password
dotnet add package IdentityFlow.Credentials.EmailOtp
dotnet add package IdentityFlow.Credentials.Passkeys
dotnet add package IdentityFlow.Credentials.TwoFactor
dotnet add package IdentityFlow.Stores.EntityFramework
dotnet add package IdentityFlow.Stores.Postgres
dotnet add package IdentityFlow.Security.DataProtection

IdentityFlow.Hosting.AspNetCore is the convenience hosting package. Use lower-level packages such as IdentityFlow.Hosting.AspNetCore.Authentication, IdentityFlow.Hosting.AspNetCore.Endpoints, and IdentityFlow.Hosting.AspNetCore.Authorization directly when you do not want the whole hosting stack in the same install.

Optional management packages are separate:

dotnet add package IdentityFlow.Management.AspNetCore
dotnet add package IdentityFlow.Management.Client
dotnet add package IdentityFlow.Management.UI.Blazor

Minimal Setup

builder.Services.AddDbContext<IdentityFlowDbContext>(options =>
    options.UseNpgsql(builder.Configuration.GetConnectionString("Auth")));
builder.Services.Configure<IdentityFlowEntityFrameworkStoreOptions>(options =>
    options.DefaultSchema = "auth");

builder.Services
    .AddIdentityFlow()
    .AddEntityFrameworkStores()
    .AddDataProtectionSecrets()
    .AddPasswordCredentials()
    .AddEmailOtpCredentials()
    .AddPasskeyCredentials()
    .AddTwoFactor()
    .AddHybridAuthentication()
    .AddAuthorization();

app.UseAuthentication();
app.UseAuthorization();
app.MapIdentityFlowAuthEndpoints();

IdentityFlow owns its auth schema. Host applications configure the provider, connection string, schema name, endpoint surface, and enabled credential modules.

In-memory stores are development/simple-setup defaults. Multi-node or restart-safe deployments should use EF/distributed cache/Redis packages for durable auth state, rate limiting, DataProtection keys, sessions, delegated OAuth state, and credential-specific stores.

Package Map

  • IdentityFlow.Core: shared contracts and auth flow primitives.
  • IdentityFlow.Credentials.*: password, email OTP, authenticator app TOTP, passkey, enterprise passkey policy, certificate, API key, personal access token, recovery code, two-factor, and external credential behavior.
  • IdentityFlow.ExternalProviders.*: OAuth/OIDC/SAML provider abstractions and common providers.
  • IdentityFlow.Stores.*: EF Core store abstractions, concrete EF store, provider packages, and in-memory test stores.
  • IdentityFlow.Security.*: data protection, audit, and rate limiting helpers.
  • IdentityFlow.Hosting.*: ASP.NET Core endpoint, OpenIddict, and device-code integration.
  • IdentityFlow.Management.*: optional management REST API, typed client, and Blazor UI.
  • IdentityFlow.Tooling.*: EF migration tooling (Postgres and SQL Server), agent auth test helpers, and Playwright browser auth tooling with its CLI.

Docs

Development

dotnet build IdentityFlow.slnx
dotnet test IdentityFlow.slnx --no-build

License

IdentityFlow is licensed under the MIT License.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on IdentityFlow.Security.DataProtection:

Package Downloads
IdentityFlow.Hosting.AspNetCore

ASP.NET Core hosting integration for IdentityFlow.

IdentityFlow.Security.DataProtection.StackExchangeRedis

StackExchange.Redis DataProtection key-ring persistence for IdentityFlow.

IdentityFlow.Security.DataProtection.EntityFramework

Entity Framework DataProtection key-ring persistence for IdentityFlow.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0-alpha.20260620175120 77 6/20/2026
0.1.0-alpha.20260620172859 70 6/20/2026
0.1.0-alpha.20260620170646 73 6/20/2026
0.1.0-alpha.20260620143000 73 6/20/2026
0.1.0-alpha.20260620135000 71 6/20/2026
0.1.0-alpha.20260620122408 75 6/20/2026
0.1.0-alpha.20260614215234 75 6/14/2026