Filippo D'Errigo Ideas, notes & experiments
Codice Sorgente Live

Spid/Cie Oidc - Relying Party .Net

.NET 9 ASP.NET Core MVC OpenID Connect Federation 1.0 jose-jwt Docker
Spid/Cie Oidc  - Relying Party .Net

SPID / CIE OIDC — Relying Party .NET per test locale

Un Relying Party SPID/CIE sviluppato in .NET senza usare librerie federation già pronte.
L’obiettivo è implementare manualmente in C# il protocollo OpenID Connect Federation 1.0, secondo il profilo italiano AgID, per comprenderne nel dettaglio ogni passaggio tecnico e crittografico.

Cosa fa

  • Espone una entity configuration firmata su /.well-known/openid-federation, completa di metadata, authority_hints e trust marks.
  • Risolve e valida la trust chain dell’OpenID Provider tramite il Trust Anchor.
  • Costruisce la authorization request come request object firmato, secondo il modello JAR, con PKCE S256.
  • Si autentica al token endpoint tramite private_key_jwt, senza registrazione statica del client: la client registration avviene automaticamente tramite trust chain.
  • Decifra la risposta UserInfo in formato JWE, usando RSA-OAEP e A128CBC-HS256, e verifica il JWS interno.
  • Gestisce refresh token con offline_access e logout RP-initiated con revoca.

Crediti

Infrastruttura di test basata su italia/spid-cie-oidc-django
https://github.com/italia/spid-cie-oidc-django
Licenza Apache-2.0.

Condividi
Torna al Lab