IdentityServer Soluzione SSO gratuita
Framework SSO Cross Platform Utilizzo di OpenID Connect e OAuth 2
Framework singolo su Framework per creare soluzioni di controllo degli accessi per moderne applicazioni Web e API. Semplifica la gestione dell'autenticazione centralizzando in un posto.
Panoramica ### ** ** IdentityServer è un framework open source che utilizza OpenID Connect e OAuth 2.0 per ottenere un singolo cartello, funge da singolo server di autenticazione e autorizzazione per più applicazioni. IdentityServer supporta sia Full .NET Framework (4.5.x) che .NET Core (che è Cross Platform). IdentityServer 4 sfrutta i vantaggi di .NET Core e può essere distribuito utilizzando Docker sui sistemi Linux. Segue le specifiche Open ID Connect e OAuth 2.0 e supporta un’ampia gamma di client come mobili, web e spa. È agnostico del database in modo da poter utilizzare qualsiasi back-end a tua scelta. Agisce come un server di autenticazione che consentirà agli utenti di accedere e fornire un token del portatore JWT che può essere utilizzato per accedere alle risorse protette da una SPA o un’app mobile. Può essere utilizzato per fornire autenticazione per app multi-tenant, ospitate su domini separati. Raggiunge l’app SSO utilizzando OIDC (che è un livello di autenticazione in cima a OAuth2).
Caratteristiche
- Autenticazione come servizio: -Single Sign-On /Sign-out
- Controllo dell’accesso per API
- Supporta le identità federate (Google, Facebook ecc.).
- personalizzazione dell’interfaccia utente
- Flussi multipli (implicito, codice di autorizzazione ecc.).
- Autorizzazione API
- Provider basato su reclami
Installazione
Installa direttamente da Nuget
È possibile installare direttamente da NuGet utilizzando il comando seguente:
Install-Package IdentityServer4 -Version 4.0.4
Installa i modelli IdentityServer4
dotnet new -i IdentityServer4.Templates
Aggiungi file Quickui e ASP.NET Identity (opzionale)
dotnet new is4aspid --force
Aggiorna il metodo ConfiguraServices () in Startup.cs come di seguito:
services.AddControllersWithViews();
Aggiorna anche il metodo configure () in startup.cs:
app.UseRouting();
app.UseIdentityServer();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
});
Costruisci ed esegui il progetto Sfoglia “/.well- noto/openid-configuration” per assicurarti che gli endpoint di scoperta siano attivi e funzionanti.
in esecuzione in docker
- Crea un progetto Core ASP.NET vuoto (controlla “Abilita supporto Docker”)
- Assicurarsi che il file di progetto si rivolga a Linux OS Linux
- Modifica il file Docker come di seguito:
FROM microsoft/dotnet:2.2-runtime AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
FROM microsoft/dotnet:2.2-sdk AS build
WORKDIR /src
COPY \[“JrTech.Identity.Web/JrTech.Identity.Web.csproj“, “JrTech.Identity.Web/”\]
RUN dotnet restore “JrTech.Identity.Web/JrTech.Identity.Web.csproj“
COPY . .
WORKDIR “/src/JrTech.Identity.Web”
RUN dotnet build “JrTech.Identity.Web.csproj” -c Release -o /app
FROM build AS publish
RUN dotnet publish “JrTech.Identity.Web.csproj” -c Release -o /app
FROM base AS final
WORKDIR /app
COPY –from=publish /app .
ENTRYPOINT \[“dotnet”, “JrTech.Identity.Web.dll”\]
- Aggiungi IdentityServer 4 eseguendo il seguente comando:
dotnet add package IdentityServer4
Esplorare
Potresti trovare i seguenti collegamenti pertinenti:
Automatizzare le operazioni aziendali utilizzando software gratuito e open source