Sökresultat :

×

ASP.NET OAuth Single Sign-On (SSO) med Keycloak som OAuth-leverantör


ASP.NET OAuth Single Sign-On (SSO)-modul ger möjlighet att aktivera OAuth Single Sign-On för dina ASP.NET-applikationer. Med enkel inloggning kan du bara använda ett lösenord för att komma åt din ASP.NET-applikation och dina tjänster. Vår modul är kompatibel med alla OAuth-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 och Keycloak som OAuth-leverantör.

Förutsättningar: Ladda ner och installation

  • Ladda ner miniOrange ASP.NET OAuth 2.0-modul.
  • För att ställa in kontakten, dra ut asp-net-oauth-sso-module.zip, hittar du en DLL-fil miniorange-oauth-sso.dll, en konfigurationsfil oauthsso.config och en integration.md fil som innehåller stegen för att lägga till modulen i din applikation.

1. Lägg till kontakten i din applikation

  • Lägg till miniorange-oauth-sso.dll i bin-mappen (där dina andra DLL-filer finns) för ditt program.
  • Registrera miniorangeoauthsso modul i din ansökan enligt de angivna stegen i integration.md fil.
  • Lägg till den medföljande konfigurationsfilen oauthsso.config i rotkatalogen för ditt program.
  • Efter integrationen öppnar webbläsaren och bläddrar i anslutningsinstrumentpanelen med URL nedan:
    https:// <your-application-base-url>/?ssoaction=config
  • Om det dyker upp registreringssidan eller inloggningssidan har du framgångsrikt lagt till miniOrange oauth sso-anslutningen för din applikation.
  • ASP.NET keycloak OAuth SSO - registrera dig med miniorange
  • Registrera dig eller Logga in för att konfigurera kontakten.

2. Ställ in Keycloak som OAuth-leverantör

  • För det första, Ladda ner Keycloak och installera den.
  • Starta server: Starta keycloak-servern genom att köra filen _standalone.sh_.
  • Rotkatalog för keycloak bin fristående.sh

  • Lägg till rike: Logga nu in på keycloak-administrationskonsolen och navigera till önskat område. Du kan lägga till ny sfär genom att välja Lägg till rike alternativ.
  • ASP.NET Keycloak OAuth SSO - lägg till rike
  • Skapa rike: ange Rikets namn och håll sfärens namn till hands eftersom det kommer att krävas senare för att konfigurera riket under ASP.NET OAuth-plugin. Klicka på SKAPA för att lägga till rike.
  • ASP.NET Keycloak OAuth SSO - lägg till rike
  • Skapa OpenID-klient: Klicka på Klienter Och välj skapa för att skapa en ny klient. Ange klient-id och välj klientprotokoll openid-anslut och välj Spara.
  • ASP.NET Keycloak OAuth SSO - klient-id
  • Ändra åtkomsttyp: När klienten har skapats ändra dess åtkomsttyp till konfidentiell.
  • ASP.NET Keycloak OAuth SSO - ändra åtkomsttyp
  • Ange giltiga omdirigerings-URI:er: Kopiera Återuppringnings-URL från plugin och klicka sedan på SPARA. Ex -- https:///oauth/återuppringning
  • ASP.NET Keycloak OAuth SSO - ändra åtkomsttyp
  • Få klienthemlighet: Nu måste vi få en klienthemlighet. Så välj Klienter och välj referenser och kopiera din hemlighet härifrån.
  • ASP.NET Keycloak OAuth SSO - klient-id klienthemlighet
  • Plugin-konfiguration: Enter kopierad Klienthemlighet under Kundhemlighet fältet i ASP.NET OAuth-plugin, och ange Kundnamn under fältet Client ID.
  • Lägg till användare: Vi måste lägga till användare till riket som kommer att kunna komma åt rikets resurser. Klicka på användare och väljer att Lägg till en ny användare.
  • ASP.NET Keycloak OAuth SSO - lägg till användare
  • Användarkonfiguration: Efter att användaren har skapats måste följande åtgärd utföras på den.
    • 1) Ställ in ett lösenord för det så klicka på referenser och ställ in ett nytt lösenord för användaren.

    ASP.NET Keycloak OAuth SSO - ange lösenord

    OBS! Om du inaktiverar Temporary blir användarlösenordet permanent.

  • Kartanvändare: Vi måste mappa användaren till en roll. Klicka på Rollmappningar och tilldela användaren önskad roll från tillgängliga roller och klicka på lägg till valda.
  • ASP.NET Keycloak OAuth SSO - kartanvändare
  • Skapa ROLLE: Rollen kommer att användas av dina applikationer för att definiera vilka användare som ska ha behörighet att komma åt applikationen. Klicka på roller och välj Lägg till Roll.
  • ASP.NET Keycloak OAuth SSO - lägg till roll

    Steg 2.1: Steg för att hämta Keycloak-grupper

    • Skapa grupper: Klicka på Grupper och välj Nytt för att skapa en ny grupp.
    • ASP.NET Keycloak OAuth SSO - skapa grupp
    • Tilldela användare till grupp: Välj den användare som du vill lägga till i gruppen. Välj alternativet Grupper från fliken och välj sedan gruppnamnet och klicka på delta.
    • ASP.NET Keycloak OAuth SSO - tilldela grupp
    • Keycloak Group Mapper: Nu för att få gruppinformation måste vi utföra dess klientmappning med gruppmedlemskap, annars hämtas inte gruppdetaljer. Så in Kundsektion, välj din klient och klicka sedan på mappar->skapa.
    • ASP.NET Keycloak OAuth SSO - gruppmappare ASP.NET Keycloak OAuth SSO - gruppmappare
    • Välj nu kartläggartyp as Gruppmedlemskap och ange namn och token-anspråksnamn dvs det attributnamn som motsvarar vilka grupper som kommer att hämtas. Stäng av den fullständiga gruppsökvägen, Lägg till i ID-token och Lägg till för att komma åt alternativen för token och klicka på Spara.
    • ASP.NET Keycloak OAuth SSO - gruppmappare

      Obs: -- Om hela sökvägen är på gruppsökvägen kommer annars gruppnamnet att hämtas.

    Steg 2.2: Steg för att hämta Keycloak-roller

    • Keycloak Roll Mapper: Nu för att få rolldetaljer måste vi utföra dess klientmappning med rollmedlemskap annars kommer inte rolldetaljer att hämtas. Så in Kundsektion, välj din klient och klicka sedan på mappar->skapa.
    • ASP.NET Keycloak OAuth SSO - gruppmappare ASP.NET Keycloak OAuth SSO - gruppmappare
    • Välj nu kartläggartyp as användarens roll Medlemskap och gå in i namn. och namn på tokenanspråk dvs det attributnamn som motsvarar vilka grupper som kommer att hämtas. Lägg till i ID-token och Lägg till för att komma åt alternativen för token, och klicka på Spara.
    • ASP.NET Keycloak OAuth SSO - gruppmappare
  • Lägg till rike: Logga nu in på keycloak-administrationskonsolen och navigera till önskat område. Du kan lägga till ny sfär genom att välja Skapa rike alternativ.
  • ASP.NET Keycloak OAuth SSO - Lägg till rike
  • Skapa rike: ange Rikets namn och ha sfärens namn till hands eftersom det kommer att krävas senare för att konfigurera riket under OAuth Client-plugin. Klicka på SKAPA för att lägga till rike.
  • ASP.NET Keycloak OAuth SSO - Skapa rike
  • Skapa OpenID-klient: Klicka på Klienter Och välj Skapa klient för att skapa en ny klient. Ange klient-ID och välj klientprotokoll openid-anslut och klicka Nästa.
  • ASP.NET Keycloak OAuth SSO - Skapa klient ASP.NET Keycloak OAuth SSO - Lägg till klient-id
  • aktivera Klientautentisering och Tillstånd växla.
  • Bläddra ner till Åtkomstinställningar och skriv in din Callback/Redirect URL som du får från din miniOrange-plugin som finns på din klientsida under Callback-URL:er textfält.
  • ASP.NET Keycloak OAuth SSO - callback url
  • Gå till referenser fliken, kopiera Klienthemlighet och ha det till hands eftersom vi kommer att kräva det senare när vi konfigurerar ASP.NET OAuth Single Sign-On-plugin.
  • ASP.NET Keycloak OAuth SSO - Kopiera klienthemlighet
  • Plugin-konfiguration: Enter kopierad Klienthemlighet under Kundhemlighet fältet i ASP.NET OAuth-plugin, och ange kund-ID under kund-ID fält.
  • Lägg till användare: Vi måste lägga till användare till riket som kommer att kunna komma åt rikets resurser. Klicka på användare och klicka på Skapa ny användare för att lägga till en ny användare.
  • ASP.NET Keycloak OAuth SSO - Lägg till användare
  • Användarkonfiguration: Efter att användaren har skapats måste följande åtgärd utföras på den.
    • 1) Ställ in ett lösenord för det så klicka på referenser och ställ in ett nytt lösenord för användaren.

    ASP.NET Keycloak OAuth SSO - ange lösenord

    OBS! Om du inaktiverar Temporary blir användarlösenordet permanent.

  • Kartanvändare: Vi måste mappa användaren till en roll. Klicka på Rollmappningar och tilldela användaren önskad roll från tillgängliga roller.
  • ASP.NET Keycloak OAuth SSO - kartanvändare
  • Skapa ROLLE: Rollen kommer att användas av dina applikationer för att definiera vilka användare som ska ha behörighet att komma åt applikationen. Klicka på roller Och välj Skapa roll.
  • ASP.NET Keycloak OAuth SSO - lägg till roll

3. Konfigurera miniOrange ASP.NET OAuth-klient

  • När du har konfigurerat din OAuth-leverantör kommer den att förse dig med Client ID, Client Secret, Authorize Endpoint, Access Token Endpoint och Få användarinformation slutpunkt. Konfigurera dessa värden under respektive fält.
  • Fyll i alla nödvändiga uppgifter och klicka på Spara konfiguration.
  • ASP.NET keycloak OAuth SSO - Oauth-konfiguration

4. Testa konfigurationen

  • När du har sparat konfigurationen klickar du på Testkonfiguration för att kontrollera om du har konfigurerat korrekt.
  • Vid framgångsrik konfiguration får du Attributnamn och Attributvärden i fönstret Testkonfiguration. Skärmdumpen nedan visar ett lyckat resultat.
  • ASP.NET keycloak OAuth SSO - testkonfiguration

5. Attributmappning

  • Mappa attributnamn som tillhandahålls av din OAuth-server med din ASP.NET-applikationsattribut som ges under Attributmappningsavsnittet och klicka på Spara attributmappning.
  • ASP.NET keycloak OAuth SSO - attributmappning
  • Obs: Alla mappade attribut kommer att lagras i sessionen så att du kan komma åt dem i din applikation.

6. Integrationskod

  • Du kan hitta integrationskod i fliken Integration Code i kontakten. Bara kopiera och klistra in det kodavsnittet där du vill komma åt användarattributen.
  • ASP.NET keycloak OAuth SSO - integrationskod

7. Lägg till följande länk i din ansökan om enkel inloggning (SSO)

  • Använd följande URL som en länk i din ansökan där du vill utföra SSO:
    http://base-url/?ssoaction=login
  • Du kan till exempel använda den som:
    <a href="http://base-url/?ssoaction=login”>Log in</a>"

    Du kan konfigurera ASP.NET SAML 2.0 Single Sign-On (SSO)-modulen 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.

Ansökan LINK
SAML SSO till DotNetNuke (DNN) webbplats Klicka här
SAML SSO till SiteFinity-webbplatsen Klicka här
SAML SSO till Umbracos webbplats Klicka här
Hej där!

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

stödja