Cookie Consent by Free Privacy Policy website Lze z "ASP.NET Core Identity" udělat server, s cílem oddělit autentikaci od vlastní aplikace? - jetoonas.cz

Lze z "ASP.NET Core Identity" udělat server, s cílem oddělit autentikaci od vlastní aplikace?


Lze z "ASP.NET Core Identity" udělat server, s cílem oddělit autentikaci od vlastní aplikace?

Ano, ASP.NET Core Identity lze použít jako základ pro vytvoření samostatného autentizačního serveru – tedy odděleného od vlastní aplikace. Ale je důležité pochopit, že ASP.NET Core Identity není protokolový server (např. OpenID Connect nebo OAuth2), takže pro oddělenou autentizaci je potřeba ho doplnit o vrstvu, která poskytne standardní autentizační protokoly.

🧩 Co je potřeba k oddělenému autentizačnímu serveru?

✅ 1. ASP.NET Core Identity – správa uživatelů, hesel, rolí

Zajišťuje:

  • Registraci, přihlášení, změnu hesla
  • Ukládání uživatelů do databáze (např. PostgreSQL)
  • 2FA, uzamčení účtu, e-mailové ověření

✅ 2. IdentityServer (Duende nebo OSS IdentityServer4) – protokolová vrstva

Zajišťuje:

  • OpenID Connect / OAuth2 – tokeny, přihlášení, autorizaci
  • Integraci s ASP.NET Core Identity jako backend
  • Možnost připojení více klientských aplikací (např. Blazor Server, mobilní appky)

🛠️ Jak to vypadá v praxi?

  1. Autentizační server:
    • ASP.NET Core + IdentityServer + ASP.NET Core Identity
    • UI pro přihlášení, registraci, správu účtu
    • Vystavuje tokeny přes OpenID Connect
  2. Klientská aplikace (např. Blazor Server):
    • Nepoužívá vlastní Identity
    • Připojuje se přes OpenID Connect middleware
    • Získává tokeny a claims od autentizačního serveru

📦 Alternativa bez IdentityServer?

Pokud nechceš používat IdentityServer, můžeš:

  • Vytvořit vlastní API pro přihlášení, registraci, ověření tokenu
  • Použít JWT tokeny a vlastní middleware
  • Ale nebudeš mít standardní OpenID Connect kompatibilitu

🔐 Doporučení

Cíl Doporučený přístup
Oddělený autentizační server ASP.NET Core Identity + IdentityServer4 (OSS)
Jednoduchá integrovaná auth ASP.NET Core Identity přímo v aplikaci
Více klientů + tokeny IdentityServer (Duende nebo OSS)

Pokud chceš, mohu ti připravit ukázkový projekt, kde ASP.NET Core Identity běží jako samostatný server a Blazor Server se k němu připojuje přes OpenID Connect. Stačí říct, jestli chceš použít open-source IdentityServer4 nebo Duende, a jaký typ databáze preferuješ.