Sökresultat :

×

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


ASP.NET Core SAML Single Sign-On (SSO) middleware 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 mellanprogramvara ä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 Okta med tanke på Okta 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
    
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 Okta som IDP

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

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

2. Konfigurera Okta som identitetsleverantör

  • Enligt plugin Settings fliken, välj Okta som din identitetsleverantör från listan som visas.
  • ASP.NET Core SAML Single Sign-On (SSO) med Okta som IDP - Välj Okta 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 Okta 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 Okta som IDP - Manuell metadata
  • Logga in Okta utvecklarkonsol.
  • På Okta Developer-webbplats, navigera till Programfliken och välj Applikationer.
  • ASP.NET Core SAML Single Sign-On (SSO) med Okta som IDP - add_application
  • Klicka på Skapa appintegration knappen för att skapa en ny app.
  • ASP.NET Core SAML Single Sign-On (SSO) med Okta som IDP - SAML 2.0 Configure
  • Klicka på SAML 2.0.
  • ASP.NET Core SAML Single Sign-On (SSO) med Okta som IDP - SAML 2.0 Configure
  • In Allmänna inställningar fliken, ange app Namn och klicka på Nästa knapp.
  • ASP.NET Core SAML Single Sign-On (SSO) med Okta som IDP - SAML 2.0 Configure
  • I SAML-inställningar anger du följande:
  • ASP.NET Core SAML Single Sign-On (SSO) med Okta som IDP - SAML_SETTINGS
    URL för enkel inloggning Ange ACS (AssertionConsumerService) URL från fliken Service Provider metadata i mellanvaran.
    Målgrupps-URI (SP Entity ID) Ange SP Entity ID / Issuer från fliken Service Provider Metadata i mellanvaran.
  • Inställd Gruppattribututlåtanden (valfritt) och klicka på Nästa knapp.
  • ASP.NET Core SAML Single Sign-On (SSO) med Okta som IDP - Add_Attributes
  • Om du har integrerat din Active Directory i Okta och vill mappa AD-grupperna, se till att du har lagt till de organisationsenheter som används för att importera grupper. Du måste också mappa medlemmen av attributet under den integrerade katalogens konfiguration.

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

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

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 mellanvaran 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 Okta 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 Okta 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 Okta som IDP - SAML dll Testkonfiguration
  • Om du upplever något fel i middleware-änden kommer du att visas med fönstret som liknar nedan.
  • ASP.NET Core SAML Single Sign-On (SSO) med Okta 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 Okta 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 Okta 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>

    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) mellanprogram 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