Suchergebnisse :

×

ASP.NET OAuth Single Sign-On (SSO) mit Keycloak als OAuth-Anbieter


Das ASP.NET OAuth Single Sign-On (SSO)-Modul bietet die Möglichkeit, OAuth Single Sign-On für Ihre ASP.NET-Anwendungen zu aktivieren. Mit Single Sign-On können Sie nur ein Passwort verwenden, um auf Ihre ASP.NET-Anwendungen und -Dienste zuzugreifen. Unser Modul ist mit allen OAuth-kompatiblen Identitätsanbietern kompatibel. Hier gehen wir eine Schritt-für-Schritt-Anleitung durch, um Single Sign-On (SSO) zwischen ASP.NET und Keycloak als OAuth-Anbieter zu konfigurieren.

Voraussetzungen: Download und Installation

  • Herunterladen miniOrange ASP.NET OAuth 2.0-Modul.
  • Extrahieren Sie zum Einrichten des Connectors die asp-net-oauth-sso-module.zip, finden Sie eine DLL-Datei miniorange-oauth-sso.dll, eine Konfigurationsdatei oauthsso.config und einem Integration.md Datei, die die Schritte zum Hinzufügen des Moduls in Ihre Anwendung enthält.

1. Fügen Sie den Connector zu Ihrer Anwendung hinzu

  • Speichern miniorange-oauth-sso.dll im bin-Ordner (wo Ihre anderen DLL-Dateien vorhanden sind) für Ihre Anwendung.
  • Registrieren miniorangeoauthsso Modul in Ihrer Anwendung gemäß den bereitgestellten Schritten in der Integration.md Datei.
  • Fügen Sie die bereitgestellte Konfigurationsdatei hinzu oauthsso.config im Stammverzeichnis Ihrer Anwendung.
  • Öffnen Sie nach der Integration den Browser und durchsuchen Sie das Connector-Dashboard mit der folgenden URL:
    https:// <your-application-base-url>/?ssoaction=config
  • Wenn die Registrierungs- oder Anmeldeseite angezeigt wird, haben Sie den miniOrange Oauth SSO-Connector erfolgreich für Ihre Anwendung hinzugefügt.
  • ASP.NET Keycloak OAuth SSO – bei miniorange registrieren
  • Registrieren oder Login zur Konfiguration des Connectors.

2. Richten Sie Keycloak als OAuth-Anbieter ein

  • Zuallererst Laden Sie Keycloak herunter und installieren Sie es.
  • Server starten: Starten Sie den Keycloak-Server, indem Sie die Datei _standalone.sh_ ausführen.
  • Stammverzeichnis von keycloak Kasten standalone.sh

  • Bereich hinzufügen: Melden Sie sich nun bei der Keycloak-Verwaltungskonsole an und navigieren Sie zu Ihrem gewünschten Bereich. Sie können einen neuen Bereich hinzufügen, indem Sie auswählen Bereich hinzufügen .
  • ASP.NET Keycloak OAuth SSO – Bereich hinzufügen
  • Bereich erstellen: Enter Bereichsname Halten Sie den Realm-Namen bereit, da er später für die Konfiguration des Realms unter dem ASP.NET OAuth-Plugin benötigt wird. Klicke auf CREATE Bereich hinzufügen.
  • ASP.NET Keycloak OAuth SSO – Bereich hinzufügen
  • OpenID-Client erstellen: Klicken Sie auf Kunden und wählen Sie erstellen um einen neuen Kunden zu erstellen. Geben Sie die Client-ID ein und wählen Sie das Client-Protokoll aus openid-connect und wählen Sie Speichern.
  • ASP.NET Keycloak OAuth SSO – Client-ID
  • Zugriffstyp ändern: Nachdem der Client erstellt wurde, ändern Sie seinen Zugriffstyp in vertraulich.
  • ASP.NET Keycloak OAuth SSO – Zugriffstyp ändern
  • Geben Sie gültige Weiterleitungs-URIs ein: Kopieren Rückruf-URL aus dem Plugin und klicken Sie dann auf SPEICHERN. Ex -- https:///oauth/callback
  • ASP.NET Keycloak OAuth SSO – Zugriffstyp ändern
  • Client-Geheimnis abrufen: Jetzt müssen wir das Kundengeheimnis erfahren. Also auswählen Kunden und wählen Sie Anmeldeinformationen aus und kopieren Sie Ihr Geheimnis von hier.
  • ASP.NET Keycloak OAuth SSO – Client-ID-Client-Geheimnis
  • Plugin-Konfiguration: Geben Sie kopiert ein Kundengeheimnis für Kundengeheimnis Feld im ASP.NET OAuth-Plugin und geben Sie das ein Client-Name unter dem Feld „Client-ID“.
  • Benutzer hinzufügen: Wir müssen dem Realm Benutzer hinzufügen, die auf die Ressourcen des Realms zugreifen können. Klick auf das Nutzer und entscheide dich dafür Fügen Sie einen neuen Benutzer hinzu.
  • ASP.NET Keycloak OAuth SSO – Benutzer hinzufügen
  • Benutzer Konfiguration: Nachdem der Benutzer erstellt wurde, muss die folgende Aktion für ihn ausgeführt werden.
    • 1) Legen Sie ein Passwort dafür fest, klicken Sie also auf Referenzen und legen Sie ein neues Passwort für den Benutzer fest.

    ASP.NET Keycloak OAuth SSO – Passwort festlegen

    HINWEIS: Wenn Sie „Temporär“ deaktivieren, wird das Benutzerkennwort dauerhaft.

  • Kartenbenutzer: Wir müssen den Benutzer einer Rolle zuordnen. Klicke auf Rollenzuordnungen Weisen Sie dem Benutzer die gewünschte Rolle aus den verfügbaren Rollen zu und klicken Sie auf Auswahl hinzufügen.
  • ASP.NET Keycloak OAuth SSO – Benutzer zuordnen
  • ROLLE erstellen: Die Rolle wird von Ihren Anwendungen verwendet, um zu definieren, welche Benutzer zum Zugriff auf die Anwendung berechtigt sind. Klick auf das Rollen und wählen Sie Hinzufügen Rollen.
  • ASP.NET Keycloak OAuth SSO – Rolle hinzufügen

    Schritt 2.1: Schritte zum Abrufen von Keycloak-Gruppen

    • Gruppen erstellen: Klicken Sie auf Groups und wähle Neu um eine neue Gruppe zu erstellen.
    • ASP.NET Keycloak OAuth SSO – Gruppe erstellen
    • Benutzer einer Gruppe zuweisen: Wählen Sie den Benutzer aus, den Sie zur Gruppe hinzufügen möchten. Wählen Sie auf der Registerkarte die Option „Gruppen“, wählen Sie dann den Gruppennamen aus und klicken Sie auf join.
    • ASP.NET Keycloak OAuth SSO – Gruppe zuweisen
    • Keycloak-Gruppen-Mapper: Um nun Gruppendetails zu erhalten, müssen wir die Clientzuordnung mit der Gruppenmitgliedschaft durchführen, andernfalls werden die Gruppendetails nicht abgerufen. Also rein Kundenbereich, wählen Sie Ihren Kunden aus und klicken Sie dann auf Mapper->Erstellen.
    • ASP.NET Keycloak OAuth SSO – Gruppenmapper ASP.NET Keycloak OAuth SSO – Gruppenmapper
    • Nun wähle Mapper-Typ as Gruppenmitgliedschaft und geben Sie die Name und Name des Tokenanspruchs dh der Attributname, der den abzurufenden Gruppen entspricht. Deaktivieren Sie den vollständigen Gruppenpfad, die Optionen „Zu ID-Token hinzufügen“ und „Zu Zugriffstoken hinzufügen“ und klicken Sie auf Speichern.
    • ASP.NET Keycloak OAuth SSO – Gruppenmapper

      Hinweis: – Wenn der vollständige Pfad angegeben ist, wird der Gruppenpfad abgerufen, andernfalls wird der Gruppenname abgerufen.

    Schritt 2.2: Schritte zum Abrufen von Keycloak-Rollen

    • Keycloak-Rollenzuordnung: Um nun Rollendetails zu erhalten, müssen wir die Clientzuordnung mit der Rollenmitgliedschaft durchführen, andernfalls werden die Rollendetails nicht abgerufen. Also rein Kundenbereich, wählen Sie Ihren Kunden aus und klicken Sie dann auf Mapper->Erstellen.
    • ASP.NET Keycloak OAuth SSO – Gruppenmapper ASP.NET Keycloak OAuth SSO – Gruppenmapper
    • Nun wähle Mapper-Typ as Benutzerbereichsrolle Mitgliedschaft und geben Sie die ein Name. und Name des Token-Anspruchs dh der Attributname, der den abzurufenden Gruppen entspricht. Wählen Sie die Optionen „Zum ID-Token hinzufügen“ und „Zum Zugriffstoken hinzufügen“ und klicken Sie auf Speichern.
    • ASP.NET Keycloak OAuth SSO – Gruppenmapper
  • Bereich hinzufügen: Melden Sie sich nun bei der Keycloak-Verwaltungskonsole an und navigieren Sie zu Ihrem gewünschten Bereich. Sie können einen neuen Bereich hinzufügen, indem Sie auswählen Reich erstellen .
  • ASP.NET Keycloak OAuth SSO – Bereich hinzufügen
  • Bereich erstellen: Enter Bereichsname Halten Sie den Realm-Namen bereit, da er später für die Konfiguration des Realms unter dem OAuth-Client-Plugin benötigt wird. Klicke auf CREATE Bereich hinzufügen.
  • ASP.NET Keycloak OAuth SSO – Bereich erstellen
  • OpenID-Client erstellen: Klicken Sie auf Kunden und wählen Sie Client erstellen um einen neuen Kunden zu erstellen. Geben Sie die Client-ID ein und wählen Sie das Client-Protokoll aus openid-connect und Klicken Sie auf Weiter.
  • ASP.NET Keycloak OAuth SSO – Client erstellen ASP.NET Keycloak OAuth SSO – Client-ID hinzufügen
  • Aktivieren Sie die Client-Authentifizierung und Genehmigung Umschalten.
  • ASP.NET Keycloak OAuth SSO – Umschalten aktivieren
  • Scrollen Sie nach unten zum Zugriffseinstellungen und geben Sie Ihr ein Rückruf-/Umleitungs-URL die Sie von Ihrem miniOrange-Plugin erhalten, das auf Ihrer Client-Seite unter dem vorhanden ist Rückruf-URLs Textfeld.
  • ASP.NET Keycloak OAuth SSO – Rückruf-URL
  • Gehen Sie zum Referenzen Registerkarte, kopieren Sie die Kundengeheimnis Halten Sie es griffbereit, da wir es später bei der Konfiguration des ASP.NET OAuth Single Sign-On-Plugins benötigen.
  • ASP.NET Keycloak OAuth SSO – Client-Geheimnis kopieren
  • Plugin-Konfiguration: Geben Sie kopiert ein Kundengeheimnis für Kundengeheimnis Feld im ASP.NET OAuth-Plugin und geben Sie das ein Kunden-ID unter dem Kunden-ID Feld.
  • Benutzer hinzufügen: Wir müssen dem Realm Benutzer hinzufügen, die auf die Ressourcen des Realms zugreifen können. Klick auf das Nutzer und klicken Sie auf Neuen Benutzer erstellen um einen neuen Benutzer hinzuzufügen.
  • ASP.NET Keycloak OAuth SSO – Benutzer hinzufügen
  • Benutzer Konfiguration: Nachdem der Benutzer erstellt wurde, muss die folgende Aktion für ihn ausgeführt werden.
    • 1) Legen Sie ein Passwort dafür fest, klicken Sie also auf Referenzen und legen Sie ein neues Passwort für den Benutzer fest.

    ASP.NET Keycloak OAuth SSO – Passwort festlegen

    HINWEIS: Wenn Sie „Temporär“ deaktivieren, wird das Benutzerkennwort dauerhaft.

  • Kartenbenutzer: Wir müssen den Benutzer einer Rolle zuordnen. Klicke auf Rollenzuordnungen und weisen Sie dem Benutzer aus den verfügbaren Rollen die gewünschte Rolle zu.
  • ASP.NET Keycloak OAuth SSO – Benutzer zuordnen
  • ROLLE erstellen: Die Rolle wird von Ihren Anwendungen verwendet, um zu definieren, welche Benutzer zum Zugriff auf die Anwendung berechtigt sind. Klick auf das Rollen und wählen Sie Rolle erstellen.
  • ASP.NET Keycloak OAuth SSO – Rolle hinzufügen

3. Konfigurieren Sie den miniOrange ASP.NET OAuth-Client

  • Nachdem Sie Ihren OAuth-Anbieter konfiguriert haben, erhalten Sie Folgendes Client-ID, Client-Geheimnis, Endpunkt autorisieren, Zugriffstoken-Endpunkt und Endpunkt für Benutzerinformationen abrufen. Konfigurieren Sie diese Werte in den entsprechenden Feldern.
  • Füllen Sie alle erforderlichen Angaben aus und klicken Sie auf Konfiguration speichern.
  • ASP.NET Keycloak OAuth SSO – OAuth-Konfiguration

4. Testkonfiguration

  • Klicken Sie nach dem Speichern der Konfiguration auf Testkonfiguration Klicken Sie auf die Schaltfläche, um zu überprüfen, ob Sie die Konfiguration korrekt durchgeführt haben.
  • Bei erfolgreicher Konfiguration erhalten Sie Attributname und Attributwerte im Fenster Testkonfiguration. Der folgende Screenshot zeigt ein erfolgreiches Ergebnis.
  • ASP.NET Keycloak OAuth SSO – Testkonfiguration

5. Attributzuordnung

  • Ordnen Sie die von Ihrem OAuth-Server bereitgestellten Attributnamen den Attributen Ihrer ASP.NET-Anwendung zu, die im Abschnitt „Attributzuordnung“ angegeben sind, und klicken Sie auf Attributzuordnung speichern.
  • ASP.NET Keycloak OAuth SSO – Attributzuordnung
  • Hinweis: Alle zugeordneten Attribute werden in der Sitzung gespeichert, sodass Sie in Ihrer Anwendung darauf zugreifen können.

6. Integrationscode

  • Sie finden die Integrationscode auf der Registerkarte „Integrationscode“ im Connector. Kopieren Sie einfach dieses Code-Snippet und fügen Sie es dort ein, wo Sie auf die Benutzerattribute zugreifen möchten.
  • ASP.NET Keycloak OAuth SSO – Integrationscode

7. Fügen Sie den folgenden Link in Ihre Anwendung für Single Sign-On (SSO) ein.

  • Verwenden Sie die folgende URL als Link in Ihrer Anwendung, von der aus Sie SSO durchführen möchten:
    http://base-url/?ssoaction=login
  • Sie können es zum Beispiel verwenden als:
    <a href="http://base-url/?ssoaction=login”>Log in</a>"

    Sie können das ASP.NET SAML 2.0 Single Sign-On (SSO)-Modul mit jedem Identitätsanbieter konfigurieren, z 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 oder sogar mit Ihrem eigenen Benutzerdefinierter Identitätsanbieter.

Anwendung LINK
SAML SSO in die DotNetNuke (DNN)-Site Hier geht es weiter.
SAML SSO in die SiteFinity-Site Hier geht es weiter.
SAML SSO in die Umbraco-Site Hier geht es weiter.
Hallo!

Brauchen Sie Hilfe? Wir sind hier!

Support
Kontaktieren Sie den miniOrange-Support
Erfolg

Vielen Dank für Ihre Anfrage.

Wenn Sie innerhalb von 24 Stunden nichts von uns hören, können Sie gerne eine Folge-E-Mail an senden info@xecurify.com