Obs: För att integrera miniOrange ASP.NET SAML SSO-mellanprogramvaran i din applikation måste du lägga till nedanstående namnrymder, tjänster och mellanprogramvara i ditt projekt (markerade i grönt). Nedan följer ett exempel.
using miniOrange.saml; using System.Reflection; public class Startup { public Startup(IConfiguration configuration) { Configuration = configuration; } public IConfiguration Configuration {get;} // This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddRazorPages(); services.AddminiOrangeServices(Assembly.GetExecutingAssembly()); } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } else { app.UseExceptionHandler("/Error"); // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. app.UseHsts(); } app.UseHttpsRedirection(); app.UseCookiePolicy(); app.UseAuthentication(); #if NET9_0_OR_GREATER app.MapStaticAssets(); #else app.UseStaticFiles(); #endif app.UseminiOrangeSAMLSSOMiddleware(); app.UseRouting(); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); } }
using miniOrange.saml;using System.Reflection;var builder=WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddRazorPages(); builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly()); 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(); #if NET9_0_OR_GREATER app.MapStaticAssets(); #else app.UseStaticFiles(); #endif app.UseminiOrangeSAMLSSOMiddleware(); app.Run();
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-core-application-base-url>/?ssoaction=config
Om registreringssidan eller inloggningssidan dyker upp har du framgångsrikt lagt till miniOrange ASP.NET Core SAML-mellanprogramvaran i din applikation.
Registrera dig eller logga in med ditt konto genom att klicka på Registrera för att konfigurera mellanvaran.
2. Konfigurera din identitetsleverantör
Enligt plugin Settings fliken väljer du din identitetsleverantör från listan som visas.
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:
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:
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:
Du kan välja vilket som helst av alternativen enligt det metadataformat du har tillgängligt.
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 Spara för att spara dina IDP-uppgifter.
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.
Om du upplever något fel i middleware-änden kommer du att visas med fönstret som liknar nedan.
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.
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.
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-integrationen skulle fungera i din Blazor-applikation.
Bara kopiera och klistra in det kodavsnittet där du vill komma åt användarattributen.
Obs: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;
}
Obs: Alla mappade attribut kommer att lagras i anspråken som ska nås i din applikation.
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://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://base-url/?ssoaction=logout
Du kan till exempel använda det som: <a href=”https://base-url/?ssoaction=logout”>Log
out</a>
För att konfigurera din IDP kan du hitta tjänsteleverantörens metadata i filen appsetting.json. För SP-metadata kan du se skärmdumpen nedan:
Från miniOrange- sektionen, kopiera spentityid, acsurl och ge det till din identitetsleverantörs team.
När tjänsteleverantörens metadata har konfigurerats på IdP-änden, kommer du att få IdP-metadatafilen eller metadata-URL eller metadata-URL:er som IdP Entity Id, IdP SSO URL etc.
För att konfigurera din IDP-metadata, navigera till
appssettings.json fil. Du hittar följande inställningar i minioranges JSON-sektion
För att konfigurera din IDP direkt, navigera till
appssettings.json fil.
Konfigurera lämplig metadata och spara inställningarna.
idp_cert
Ange IDP-certifikatet i detta fält
ssourl
Ange SSO URL i detta fält
idp_issuer
Ange IDP-utgivaren i detta fält
Attributmappning
Mappa dina applikationsattribut med IDP-attributen (identity provider).
Obs: Alla mappade attribut kommer att lagras i sessionen så att du kan komma åt dem i din applikation.
Integrationskod
Bara kopiera och klistra in kodavsnittet där du vill komma åt användarattributen.
Obs: Alla mappade attribut kommer att lagras i sessionen så att du kan komma åt dem i din applikation.
Du kan konfigurera ASP.NET Core SAML Single Sign-On (SSO) mellanprogramvara med valfri identitetsleverantör, till exempel 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 anpassade identitetsleverantör . Se listan över identitetsleverantörer här.
Hittar du inte din identitetsleverantör? Maila oss på aspnetsupport@xecurify.com så hjälper vi dig att konfigurera SSO med din IDP och för snabb vägledning (via e-post/möte) om dina behov. Vårt team hjälper dig att välja den bästa lösningen/planen utifrån dina behov.
Hej där!
Behövs hjälp? Vi är här!
Kontakta miniOrange Support
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