Sökresultat :

×

ASP.NET Core SAML Single Sign-On (SSO) med Azure AD 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 Microsoft Entra ID (tidigare Azure AD) med tanke på Azure AD 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.0 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 Azure AD som IDP

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

  • Efter integreringen öppnar du din webbläsare och bläddrar i anslutningspanelen 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-anslutningen till din applikation.
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) 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 Azure AD som identitetsleverantör

  • Enligt plugin Settings fliken, välj Azure AD som din identitetsleverantör från listan som visas.
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Välj Azure AD 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 Azure AD (Microsoft Entra ID) 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 Azure AD (Microsoft Entra ID) som IDP - Manuell metadata

  • Logga in Azure AD Portal
  • Välja Azure Active Directory.
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Företagsregistreringar
  • Välja Enterprise-applikation.
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Företagsregistreringar
  • Klicka på Ny ansökan.
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Ny applikation
  • Klicka på Skapa din egen applikation.
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Add Non-Gallery Application
  • Ange namnet på din app och välj sedan Icke-galleriapplikation avsnittet och klicka på Skapa knapp.
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Add Non-Gallery Application
  • Klicka på Konfigurera enkel inloggning .
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Add Non-Gallery Application
  • Välj SAML  fliken.
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Add Non-Gallery Application
  • Efter att ha klickat på Redigera, gå in i SP Entity ID för Identifiera och den ACS URL för Svars-URL från Tjänsteleverantörens metadata fliken i plugin-programmet.
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Välj SAML-autentisering SSO ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Välj SAML-autentisering SSO
  • Som standard, följande attribut kommer att skickas i SAML-svaret. Du kan se eller redigera anspråken som skickats i SAML-svaret till ansökan under attribut fliken.
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Konfigurera SAML 2.0
  • Kopiera App Federation Metadata URL att få endpoints krävs för att konfigurera din Leverantör.
  • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - Konfigurera SAML 2.0
  • Tilldela användare och grupper till din SAML-applikation
    • Navigera till Användare och grupper fliken och klicka på Lägg till användare/grupp.
    • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - tilldela grupper och användare
    • Klicka på användare för att tilldela önskad användare och klicka sedan på välj.
    • ASP.NET Core SAML Single Sign-On (SSO) med Azure AD (Microsoft Entra ID) som IDP - lägg till användare
    • Du kan även tilldela en roll till din ansökan under Välj Roll sektion.

Du har framgångsrikt konfigurerat Microsoft Entra ID (tidigare Azure AD) som SAML IDP (Identity Provider) för att uppnå ASP.NET Core Single Sign-On (SSO).

3. Konfigurera ASP.NET Core 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 Azure AD (Microsoft Entra ID) 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 Azure AD (Microsoft Entra ID) 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 Azure AD (Microsoft Entra ID) 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 Azure AD (Microsoft Entra ID) 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 Azure AD (Microsoft Entra ID) 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).
  • Obs: 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 Azure AD (Microsoft Entra ID) 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, Microsoft Entra ID (tidigare 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 anpassade 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