Serwer tożsamości

IdentityServer Darmowe rozwiązanie SSO

Framework SSO Platform za pomocą OpenId Connect i OAuth 2

Pojedynczy znak na Framework, aby budować rozwiązania kontroli dostępu dla nowoczesnych aplikacji internetowych i interfejsów API. Uprościć zarządzanie uwierzytelnianiem, scentralizując się w jednym miejscu.

Przegląd

IdentityServer to framework open source, który wykorzystuje OpenId Connect i OAuth 2.0 do osiągnięcia pojedynczego znaku, działa jako serwer uwierzytelniania i autoryzacji dla wielu aplikacji. IdentityServer obsługuje zarówno pełną framework .NET (4.5.x), jak i .NET Core (który jest platformą krzyżową). IdentityServer 4 ma zalety .NET Core i można go wdrożyć za pomocą Docker w systemach Linux. Postępuje zgodnie z specyfikacjami Open ID Connect i OAuth 2.0 i obsługuje szeroką gamę klientów, takich jak urządzenia mobilne, internetowe i spa. To baza danych agnostyka, dzięki czemu możesz użyć dowolnego wyboru. Działa jako serwer uwierzytelniający, który pozwoli użytkownikom się zalogować i zapewnia token nosiciela JWT, który można użyć do dostępu do zasobów chronionych ze spa lub aplikacji mobilnej. Można go używać do uwierzytelniania aplikacji wielozadaniowych, hostowanych w osobnych domenach. Osiąga aplikację SSO za pomocą OIDC (która jest warstwą uwierzytelniania na OAuth2).

Wymagania systemowe


  • ASP.NET Core 3.0
  • IIS / Docker

Cechy


  • Uwierzytelnianie jako usługa: -pojedyncze logowanie /wylogowanie się
  • Kontrola dostępu do API
  • Obsługuje tożsamości federacyjne (Google, Facebook itp.).
  • Dostosowywanie interfejsu użytkownika
  • Wiele przepływów (niejawny kod autoryzacji itp.).
  • Upoważnienie API
  • Dostawca oparty na roszczeniach

Instalacja

Zainstaluj bezpośrednio z Nuget

Możesz zainstalować bezpośrednio z Nuget za pomocą następującego polecenia:

    Install-Package IdentityServer4 -Version 4.0.4

Zainstaluj szablony IdentityServer4

    dotnet new -i IdentityServer4.Templates  

Dodaj pliki QuickUi i tożsamość ASP.NET (opcjonalnie)

    dotnet new is4aspid --force  

Aktualizacja metoda ConfireServices () w startup.cs jak poniżej:

    services.AddControllersWithViews();  

Zaktualizuj także metodę konfiguruj () w startup.cs:

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

Zbuduj i uruchom projekt Przeglądaj „/.well-nown/openid-configuration”, aby upewnić się, że punkty końcowe Discovery są uruchomione.

działanie w Docker

  1. Utwórz pusty projekt ASP.NET (sprawdź „Włącz obsługę Docker”)
  2. Upewnij się, że plik projektu jest ukierunkowany
  3. Zmodyfikuj plik Docker jak poniżej:
        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”\]  
  • Dodaj IdentityServer 4, uruchamiając następujące polecenie:
    dotnet add package IdentityServer4

Badać

Możesz znaleźć istotne następujące linki:

** Zautomatyzuj operacje biznesowe za pomocą oprogramowania bezpłatnego i open source **

 Polski