Identitätsserver

IdentityServer Kostenlose SSO -Lösung

Cross Plattform SSO -Framework mit OpenID Connect und OAuth 2

Einzelzeichen auf Framework zum Erstellen von Zugriffskontrolllösungen für moderne Webanwendungen und APIs. Vereinfachen Sie das Authentifizierungsmanagement durch Zentralisierung an einem Ort.

Überblick

IdentityServer ist ein Open -Source -Framework, das OpenID Connect und OAuth 2.0 verwendet, um ein einzelnes Zeichen zu erreichen, und fungiert als einzelne Authentifizierungs- und Autorisierungsserver für mehrere Anwendungen. IdentityServer unterstützt sowohl Full .NET Framework (4.5.x) als auch .NET Core (Cross -Plattform). IdentityServer 4 nimmt die Vorteile von .NET Core aus und kann mit Docker auf Linux -Systemen bereitgestellt werden. Es folgt Open ID Connect- und OAuth 2.0 -Spezifikationen und unterstützt eine breite Palette von Clients wie Mobile, Web und Spas. Es handelt sich um Datenbank Agnostic, sodass Sie jedes Back-End Ihrer Wahl verwenden können. Es fungiert als Authentifizierungsserver, auf dem Benutzer sich anmelden können und ein JWT -Bearer -Token bietet, mit dem aus einem Spa oder einer mobilen App auf geschützte Ressourcen zugreifen kann. Es kann verwendet werden, um Authentifizierung für Multi-Mieter-Apps bereitzustellen, die auf separaten Domänen gehostet werden. Es erreicht App SSO mit OIDC (eine Authentifizierungsschicht über OAuth2).

System Anforderungen


  • ASP.NET CORE 3.0
  • IIS / Docker

Merkmale


  • Authentifizierung als Service: -Single Sign-On /Anmeldung
  • Zugangskontrolle für API
  • Unterstützt die Föderation Identitäten (Google, Facebook usw.).
  • UI -Anpassung
  • Mehrere Strömungen (implizit, Autorisierungscode usw.).
  • API -Autorisierung
  • Anbieterbasierter Anbieter

Installation

Installieren Sie direkt bei Nuget

Sie können direkt von Nuget mit dem folgenden Befehl installieren:

    Install-Package IdentityServer4 -Version 4.0.4

IdentityServer4 -Vorlagen installieren

    dotnet new -i IdentityServer4.Templates  

Fügen Sie Quickui -Dateien und ASP.NET -Identität hinzu (optional)

    dotnet new is4aspid --force  

Aktualisieren Sie die Methode configureservices () in startup.cs wie unten:

    services.AddControllersWithViews();  

Aktualisieren Sie auch die Methode configure () in startup.cs:

    app.UseRouting();  
       
     app.UseIdentityServer();  
     app.UseAuthorization();   
     app.UseEndpoints(endpoints =>  
     {  
     endpoints.MapControllerRoute(  
     name: "default",  
     pattern: "{controller=Home}/{action=Index}/{id?}");  
     });  

Bauen und führen Sie das Projekt aus Durchsuchen Sie “/.well-Bekannte/openid-Configuration”, um sicherzustellen, dass Discovery-Endpunkte im Betrieb sind.

in Docker laufen

  1. Erstellen Sie ein leeres ASP.NET -Kernprojekt (überprüfen Sie “Docker -Unterstützung aktivieren”).
  2. Stellen Sie sicher, dass die Projektdatei Linux OS Linux abzielt
  3. Ändern Sie die Docker -Datei wie unten:
        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”\]  
  • IdentityServer 4 hinzufügen, indem Sie den folgenden Befehl ausführen:
    dotnet add package IdentityServer4

Erkunden

Möglicherweise finden Sie die folgenden Links relevant:

Automatisieren Sie den Geschäftsbetrieb mit der kostenlosen und Open -Source -Software

 Deutsch