Projet de démonstration illustrant l'authentification par jeton JWT entre une API d'identité et une application Blazor Server.
La solution comporte deux parties :
- Api.Identity : une API minimale (Minimal API) exposant deux points d'entrée,
POST /loginetPOST /refresh, qui délivrent et renouvellent des jetons JWT. Les données sont stockées dans une base SQLite locale. - Blazor.Authentication.Web : une application Blazor Server qui consomme cette API via un
HttpClientet gère l'état d'authentification côté client à l'aide d'unCustomAuthenticationStateProvider.
Les deux projets se lancent indépendamment :
# API d'identité (Swagger disponible en développement)
dotnet run --project Api.Identity/Api.Identity.csproj
# Application web Blazor Server
dotnet run --project Blazor.Authentication.Web/Blazor.Authentication.Web.csprojL'application web s'attend à trouver l'API à l'adresse configurée dans son Program.cs (https://localhost:7195 par défaut).
C# / .NET 7, ASP.NET Core (Minimal API et Blazor Server), JWT, SQLite.