Sökresultat :

×

ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP


ASP.NET Core SAML Single Sign-On (SSO) modulen ger möjlighet att aktivera SAML Single Sign-On för dina ASP.NET-kärnapplikationer. Genom att använda enkel inloggning kan du bara använda ett lösenord för att komma åt din ASP.NET kärnapplikation och tjänster. Vår modul är kompatibel med alla SAML-kompatibla identitetsleverantörer. Här kommer vi att gå igenom en steg-för-steg-guide för att konfigurera Single Sign-On (SSO) mellan ASP.NET Core och PingFederate med tanke på PingFederate som IdP. För att veta mer om funktionerna vi tillhandahåller för ASP.NET Core SSO, klicka här..

Plattformssupport: ASP.NET Core SAML-mellanvaran stöder ASP.NET Core 2.1 och senare. Den stöder alla ASP.NET Core-plattformar, inklusive Windows, Linux och macOS.

Förutsättningar: Ladda ner och installation


PM> NuGet\Install-Package miniOrange.SAML.SSO.Middleware -Version 5.0.2
      
using Microsoft.AspNetCore.Authentication.Cookies; using miniOrange.saml; var builder = WebApplication.CreateBuilder(args); builder.Services.AddRazorPages(); // Add authentication services builder.Services.AddControllersWithViews(); builder.Services.AddAuthentication(options =>  { options.DefaultAuthenticateScheme = "SSO_OR_Admin"; options.DefaultScheme = "SSO_OR_Admin"; options.DefaultChallengeScheme = "SSO_OR_Admin";  }) .AddCookie("moAdmin", options =>  {  }) .AddCookie(CookieAuthenticationDefaults.AuthenticationScheme, options =>  { // Configure cookie options as needed for SSO Users }) .AddPolicyScheme("SSO_OR_Admin", "SSO_OR_Admin", options => { // runs on each request options.ForwardDefaultSelector = context => { // filter by auth type, here if the moAdmin cookie is coming in any request the Admin Authentication will work foreach (var cookie in context.Request.Cookies) { if (cookie.Key.Contains(".AspNetCore.Cookies")) { return CookieAuthenticationDefaults.AuthenticationScheme; } } // otherwise always check for cookie auth return "moAdmin"; }; }); var app = builder.Build(); if (!app.Environment.IsDevelopment())  {     app.UseExceptionHandler("/Error");     app.UseHsts();  } app.UseHttpsRedirection(); app.UseRouting(); app.UseAuthorization(); app.MapRazorPages(); app.UseCookiePolicy(); app.UseAuthentication(); app.UseStaticFiles(); app.UseminiOrangeSAMLSSOMiddleware(); app.Run();

Steg för att konfigurera ASP.NET Core Single Sign-On (SSO) med PingFederate som IDP

1. Lägg till modul i ASP.NET Core-applikationen

  • Efter integreringen öppnar du din webbläsare och bläddrar i anslutningspanelen med webbadressen nedan:
    https://<your-application-base-url>/?ssoaction=config
  • Om registreringssidan eller inloggningssidan dyker upp har du framgångsrikt lagt till miniOrange ASP.NET middleware autentisering SAML SSO-anslutningen till din applikation.
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - saml dll register
  • Registrera dig eller logga in med ditt konto genom att klicka på Registrera för att konfigurera modulen.

2. Konfigurera PingFederate som identitetsleverantör

  • Enligt plugin Settings fliken, välj PingFederate som din identitetsleverantör från listan som visas.
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Välj PingFederate som identitetsleverantör

Det finns två sätt som beskrivs nedan med vilka du kan få SAML SP-metadata att konfigurera på din identitetsleverantör.

A] Använda SAML-metadata-URL eller metadatafil:
  • I Menyn för plugininställningar, leta efter Inställningar för tjänsteleverantör. Under det kan du hitta metadata-URLen samt möjligheten att ladda ner SAML-metadata.
  • Kopiera metadata-URL eller ladda ned metadatafilen för att konfigurera densamma på din identitetsleverantör.
  • Du kan hänvisa till skärmdumpen nedan:
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Kopiera nedladdade metadata
B] Ladda upp metadata manuellt:
  • Från Inställningar för tjänsteleverantör avsnitt, kan du manuellt kopiera tjänsteleverantörens metadata som SP Entity ID, ACS URL, Single Logout URL och dela den med din identitetsleverantör för konfiguration.
  • Du kan hänvisa till skärmdumpen nedan:
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Manuell metadata
  • Logga in på din Ping Federate User Admin-instrumentpanel.
  • Klicka på Identitetsleverantör i den vänstra navigeringsmenyn.
  • Enligt SP-ANSLUTNING, Klicka på Skapa ny knapp.
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - SP CONNECTION
  • Välj Webbläsare SSO-profiler anslutningsmall på Anslutningstyp fliken och klicka Nästa.
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Browser SSO Profiler
  • Välj Browser SSO på Anslutningsalternativ fliken och klicka Nästa.
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Anslutningsalternativ
  • Välja Fil som metod för att importera metadata och klicka Välja fil för att välja miniOrange SSO-plugins metadata på Importera metadata flik. Klick Nästa.
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Importera metadata
  • Granska informationen på Sammanfattning av metadata fliken och klicka Nästa.
  • I Fliken Allmän information se till att Tjänsteleverantörens enhets-ID, anslutningsnamnoch Grundadress fält fylls i förväg baserat på metadata. Klick Nästa.
  • Navigera till Webbläsare SSO fliken och klicka på Konfigurera webbläsare SSO. Du kommer att omdirigeras till inställningsguiden för webbläsare SSO.
    • Välj IdP-initierad SSO och SP-initierad SSO alternativ på SAML-profiler fliken och klicka Nästa.
    • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - SAML-profiler
    • Ange önskad giltighetstid för påståendet från och med den Assertion Lifetime fliken och klicka Nästa. Som standard är den konfigurerad 5 minuter för båda.
    • Navigera till Assertion Creation och klicka på Configure Assertion Creation. Du kommer att omdirigeras till installationsguiden för att skapa påstående.
      • Välj STANDARD på fliken Identitetsmappning och klicka på Nästa.
      • Välj ett ämnesnamnformat för SAML_SUBJECT på Attributkontrakt fliken och klicka på Nästa.
      • Klicka på Map New Adapter Instance på Authentication Source Mapping.
      • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Authentication Source Mapping
      • Välj en Adapterinstans och klicka Nästa. Adaptern måste innehålla användarens e-postadress.
      • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Adapter Instance
      • Välj Använd endast adapterkontraktsvärdena i SAML-påståendet alternativ på Kartläggningsmetod fliken och klicka Nästa.
      • Välj din adapterinstans som Källa och e-postmeddelandet som VärdeAttribut Kontraktsuppfyllelse fliken och klicka Nästa.
      • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Mapping Method
      • (Valfritt) Välj eventuella auktoriseringsvillkor som du vill ha på Utgivningskriterier fliken och klicka Nästa.
      • Klicka Färdig Sammanfattning.
      • Klicka NästaMappning av autentiseringskälla fliken.
      • Klicka Färdig på fliken Sammanfattning.
      • Klicka NästaPåstående skapande
  • Navigera till fliken Protocol Settings i Webbläsarens SSO-guide och klicka på Configure Protocol settings.
    • Välj POST för Bindning och ange enkel inloggning slutpunkts-URL i fältet Endpoint URL på Assertion Consumer Service URL Klicka Nästa.
    • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Webbläsare SSO-guide
    • Välja POST Tillåtna SAML-bindningar fliken och klicka Nästa.
    • Välj önskade signaturpolicyer för påståenden om Signaturpolicy fliken och klicka Nästa.
    • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - signaturpolicyer
    • Välj önskad krypteringspolicy för påståenden om Krypteringspolicy fliken och klicka Nästa.
    • Klicka Färdig Sammanfattning av protokollinställningar fliken.
  • Navigera till referenser och klicka på Konfigurera autentiseringsuppgifter. Du kommer att omdirigeras till referenser installationsguiden.
    • Välj signeringscertifikatet som ska användas med tjänsten Single Sign-On och välj Inkludera certifikatet i signaturelementet på fliken Digital Signature Settings. Klicka på Klar.
    • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Signeringscertifikat
    • Klicka Färdig Sammanfattning.
    • Klicka Nästa referenser.
  • Välja Aktiva för Anslutningsstatus Aktivering & Sammanfattning fliken och klicka Save.
  • Navigera nu till Ping Federate User Admin dashboardè Identity Provide.
  • Klicka Hantera alla under SP-anslutningar.
  • Klicka Exportera metadata för den önskade tjänsteleverantörens anslutning.
  • Klicka Exportera Export & Sammanfattning fliken och klicka Klar.

3. Konfigurera ASP.NET SAML-modul som tjänsteleverantör

Det finns två sätt som beskrivs nedan med vilka du kan konfigurera din SAML-identitetsleverantörs metadata i modulen.

A] Ladda upp metadata med knappen Ladda upp IDP-metadata:
  • Om din identitetsleverantör har försett dig med metadata-URL eller metadatafil (endast .xml-format) kan du helt enkelt konfigurera identitetsleverantörens metadata i modulen med hjälp av Ladda upp IDP-metadata alternativ.
  • Du kan hänvisa till skärmdumpen nedan:
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Ladda upp metadata
  • Du kan välja vilket som helst av alternativen enligt det metadataformat du har tillgängligt.
B] Konfigurera identitetsleverantörens metadata manuellt:
  • Efter att ha konfigurerat din Identitetsleverantör, kommer det att ge dig IDP Entity ID, IDP Single Sign On URL och SAML X509-certifikat fält respektive.
  • Klicka Save för att spara dina IDP-uppgifter.
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - SAML dll config

4. Testa SAML SSO

  • Klicka på Testkonfiguration för att testa om SAML-konfigurationen du har gjort är korrekt.
  • Skärmdumpen nedan visar ett lyckat resultat. Klicka på SSO-integration för att fortsätta med SSO-integrationen.
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - SAML dll Testkonfiguration
  • Om du upplever något fel i modulens ände kommer du att visas med fönstret som liknar nedan.
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Aktivera felsökningsloggar
  • För att felsöka felet kan du följa stegen nedan:
    • Enligt felsöka fliken, aktivera växeln för att ta emot pluginloggarna.
    • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - Aktivera felsökningsloggar
    • När det är aktiverat kommer du att kunna hämta pluginloggar genom att navigera till plugin Settings fliken och klicka på Testkonfiguration.
    • ladda ner loggfil från felsöka fliken för att se vad som gick fel.
    • Du kan dela loggfil med oss ​​kl aspnetsupport@xecurify.com och vårt team kommer att kontakta dig för att lösa ditt problem.

5. Attributmappning

  • Efter att ha testat konfigurationen, mappa dina applikationsattribut med attributen Identity Provider (IdP).
  • Notera: Alla mappade attribut kommer att lagras i sessionen så att du kan komma åt dem i din applikation.
  • ASP.NET Core SAML Single Sign-On (SSO) med PingFederate som IDP - attributmappning

6. Integrationskod

  • Dessa steg låter dig hämta SSO-användarinformationen i din ansökan i form av användaranspråk.
  • Du kan också titta på installationstur för att förstå hur SSO-integreringen skulle fungera i din asp.net-mellanprogramvara.
  • Bara kopiera och klistra in det kodavsnittet där du vill komma åt användarattributen.
  • ASP.NET Core SAML Single Sign-On (SSO) | ASP.NET Core Authentication | ASP.NET Core SAML SSO - integrationskod
  • Notera:Denna provmellanvara stöder endast användarinformation i anspråk, hämtning av användarinformation i session och rubriker är tillgänglig i premiumplugin
  • Du kan också kopiera integrationskoden nedan:
  •           
      string name="";   string claimtype="";   string claimvalue="";    if(User.Identity.IsAuthenticated)    {      foreach( var claim in User.Claims)      {        claimtype = claim.Type;        claimvalue = claim.Value;      }      //retrive custom attributes(for eg. Retrieve Mapped 'mobileNumber' attribute of your IDP)      var identity = (ClaimsIdentity)User.Identity;      IEnumerable claims = identity.Claims;      string mobileNumber = identity.FindFirst("mobileNumber")?.Value;    }
  • Notera: Alla mappade attribut kommer att lagras i anspråken som ska nås i din applikation.
  • Om du vill ha hjälp med integrationskoden, kontakta oss på aspnetsupport@xecurify.com

7. Inloggningsinställningar

  • Hök på Välj Åtgärder och klicka på Kopiera SSO-länk.
  • ASP.NET Core SAML Single Sign-On (SSO) med ADFS som IDP - Kopiera SSO-länk
  • Använd följande URL som en länk i applikationen där du vill utföra SSO:
    https://asp.net-middleware-base-url/?ssoaction=login
  • Du kan till exempel använda det som:
    <a href=”https://asp.net-middleware-base-url/?ssoaction=login”>Log in</a>

7. Inloggningsinställningar

  • Hök på Välj Åtgärder och klicka på Kopiera SSO-länk.
  • ASP.NET Core SAML Single Sign-On (SSO) med ADFS som IDP - Kopiera SSO-länk
  • Använd följande URL som en länk i applikationen där du vill utföra SSO:
    https://base-url/?ssoaction=login
  • Du kan till exempel använda det som:
    <a href=”https://asp-net-middlewarebase-url/?ssoaction=login”>Log in</a>

8. Logga ut Inställningar

  • Använd följande URL som en länk till din applikation där du vill utföra SLO:
    https://asp-net-middleware-base-url/?ssoaction=logout
  • Du kan till exempel använda det som:
    <a href=”https://asp-net-middleware-base-url/?ssoaction=logout”>Log out</a>

Du kan konfigurera ASP.NET Core SAML 2.0 Single Sign-On (SSO)-modulen med vilken identitetsleverantör som helst som t.ex. ADFS, Azure AD, Bitium, centrify, G Suite, JBoss Keycloak, Okta, OneLogin, Salesforce, AWS Cognito, OpenAM, Oracle, PingFederate, PingOne, RSA SecureID, Shibboleth-2, Shibboleth-3, SimpleSAML, WSO2 eller till och med med din egen anpassad identitetsleverantör. Kontrollera listan över identitetsleverantörer här..

Ytterligare resurser


Behöver hjälp?

Kan du inte hitta din identitetsleverantör? Maila oss vidare aspnetsupport@xecurify.com och vi hjälper dig att ställa in SSO med din IDP och för snabb vägledning (via e-post/möte) om ditt krav och vårt team hjälper dig att välja den bästa lämpliga lösningen/planen enligt dina krav.

Hej där!

Behövs hjälp? Vi är här!

stödja
Kontakta miniOrange Support
framgång

Tack för din förfrågan.

Om du inte hör från oss inom 24 timmar, skicka gärna ett uppföljningsmail till info@xecurify.com