|
Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar. |
Keycloak (SAML) konfigurieren
Wenn Ihre Organisation Keycloak Identity Provider (IdP) zur Benutzerauthentifizierung verwendet, können Sie Rancher so konfigurieren, dass Ihre Benutzer sich mit ihren IdP-Anmeldeinformationen anmelden können.
Voraussetzungen
-
Sie müssen einen Keycloak IdP Server konfiguriert haben.
-
Erstellen Sie in Keycloak einen neuen SAML-Client mit den folgenden Einstellungen. Siehe die Keycloak-Dokumentation für Hilfe.
Einstellung Wert Sign DocumentsON1Sign AssertionsON1Alle anderen
ON/OFFEinstellungenOFFClient IDEntweder
https://yourRancherHostURL/v1-saml/keycloak/saml/metadataoder der in derEntry ID Fieldder Rancher Keycloak-Konfiguration konfigurierte Wert2Client Name(z.B. rancher)Client ProtocolSAMLValid Redirect URIhttps://yourRancherHostURL/v1-saml/keycloak/saml/acs1: Optional können Sie eine oder beide dieser Einstellungen aktivieren. 2: Die Rancher SAML-Metadaten werden nicht generiert, bis ein SAML-Anbieter konfiguriert und gespeichert ist.
-
Erstellen Sie im neuen SAML-Client Mapper, um die Benutzerfelder offenzulegen.
-
Fügen Sie alle "Builtin Protocol Mappers" hinzu
-
Erstellen Sie einen neuen "Group list" Mapper, um das Mitgliedsattribut den Gruppen eines Benutzers zuzuordnen.
-
Abrufen der IDP-Metadaten
-
Keycloak 5 und früher
-
Keycloak 6-13
-
Keycloak 14+
Um die IDP-Metadaten zu erhalten, exportieren Sie eine metadata.xml Datei von Ihrem Keycloak-Client.
Wählen Sie im Tab Installation die Formatoption SAML Metadata IDPSSODescriptor und laden Sie Ihre Datei herunter.
-
Klicken Sie im Abschnitt Konfigurieren auf die Registerkarte Realm-Einstellungen.
-
Klicken Sie auf die Registerkarte Allgemein.
-
Klicken Sie im Feld Endpunkte auf SAML 2.0 Identitätsanbieter-Metadaten.
Überprüfen Sie, ob die IDP-Metadaten die folgenden Attribute enthalten:
xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
Einige Browser, wie Firefox, können das Dokument so darstellen/verarbeiten, dass der Inhalt geändert zu sein scheint und einige Attribute fehlen. In dieser Situation verwenden Sie die Rohdaten der Antwort, die Sie mit Ihrem Browser finden können.
Das Folgende ist ein Beispiel für einen Prozess in Firefox, kann jedoch für andere Browser leicht variieren:
-
Drücken Sie F12, um die Entwicklertools zu öffnen.
-
Klicken Sie auf die Registerkarte Netzwerk.
-
Klicken Sie in der Tabelle auf die Zeile, die
descriptorenthält. -
Klicken Sie im Detailbereich auf die Registerkarte Antwort.
-
Kopieren Sie die Rohdaten der Antwort.
Die erhaltene XML enthält EntitiesDescriptor als Root-Element. Rancher erwartet, dass das Root-Element EntityDescriptor anstelle von EntitiesDescriptor ist. Bevor Sie diese XML an Rancher übergeben, befolgen Sie diese Schritte, um sie anzupassen:
-
Kopieren Sie alle Attribute von
EntitiesDescriptorzu demEntityDescriptor, die nicht vorhanden sind. -
Entfernen Sie das
<EntitiesDescriptor>-Tag vom Anfang. -
Entfernen Sie das
</EntitiesDescriptor>vom Ende der XML.
Es bleibt etwas Ähnliches übrig, wie im folgenden Beispiel:
<EntityDescriptor xmlns="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" entityID="https://{KEYCLOAK-URL}/auth/realms/{REALM-NAME}">
....
</EntityDescriptor>
-
Klicken Sie im Abschnitt Konfigurieren auf die Registerkarte Realm-Einstellungen.
-
Klicken Sie auf die Registerkarte Allgemein.
-
Klicken Sie im Feld Endpunkte auf SAML 2.0 Identitätsanbieter-Metadaten.
Überprüfen Sie, ob die IDP-Metadaten die folgenden Attribute enthalten:
xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
Einige Browser, wie Firefox, können das Dokument so darstellen/verarbeiten, dass der Inhalt geändert zu sein scheint und einige Attribute fehlen. In dieser Situation verwenden Sie die Rohdaten der Antwort, die Sie mit Ihrem Browser finden können.
Das folgende ist ein Beispielprozess für Firefox, kann jedoch leicht für andere Browser variieren:
-
Drücken Sie F12, um die Entwicklertools zu öffnen.
-
Klicken Sie auf die Registerkarte Netzwerk.
-
Klicken Sie in der Tabelle auf die Zeile, die
descriptorenthält. -
Klicken Sie im Detailbereich auf die Registerkarte Antwort.
-
Kopieren Sie die Rohdaten der Antwort.
Keycloak in Rancher konfigurieren
-
Klicken Sie oben links auf ☰ > Benutzer & Authentifizierung.
-
Klicken Sie im linken Navigationsmenü auf Auth-Anbieter.
-
Klicken Sie auf Keycloak SAML.
-
Füllen Sie das Formular Keycloak-Konto konfigurieren aus. Für Hilfe beim Ausfüllen des Formulars siehe die Konfigurationsreferenz.
-
Nachdem Sie das Formular Keycloak-Konto konfigurieren ausgefüllt haben, klicken Sie auf Aktivieren.
Rancher leitet Sie zur IdP-Anmeldeseite weiter. Geben Sie Anmeldeinformationen ein, die mit Keycloak IdP authentifiziert werden, um Ihre Rancher Keycloak-Konfiguration zu validieren.
Möglicherweise müssen Sie Ihren Popup-Blocker deaktivieren, um die IdP-Anmeldeseite zu sehen.
Ergebnis: Rancher ist so konfiguriert, dass es mit Keycloak funktioniert. Ihre Benutzer können sich jetzt mit ihren Keycloak-Anmeldedaten bei Rancher anmelden.
|
SAML-Anbieter-Hinweise
|
Konfigurationsreferenz
| Feld | Beschreibung |
|---|---|
Feld für den Anzeigenamen |
Das Attribut, das den Anzeigenamen der Benutzer enthält. |
Feld für den Benutzernamen |
Das Attribut, das den Benutzernamen/Vornamen enthält. |
UID-Feld |
Ein Attribut, das für jeden Benutzer einzigartig ist. |
Gruppenfeld |
Erstellen Sie Einträge zur Verwaltung von Gruppenmitgliedschaften. |
Entity-ID-Feld |
Die ID, die als Client-ID im Keycloak-Client konfiguriert werden muss. |
Rancher API-Host |
Die URL für Ihren Rancher-Server. |
Privater Schlüssel / Zertifikat |
Ein Schlüssel/Zertifikat-Paar zur Erstellung einer sicheren Shell zwischen Rancher und Ihrem IdP. |
IDP-metadata |
Die |
|
Sie können ein Schlüssel/Zertifikat-Paar mit dem Befehl openssl generieren. Beispiel: openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout myservice.key -out myservice.cert |
Anhang: Fehlerbehebung
Wenn Sie Probleme beim Testen der Verbindung zum Keycloak-Server haben, überprüfen Sie zuerst die Konfigurationsoption Ihres SAML-Clients. Sie können auch die Rancher-Protokolle überprüfen, um die Ursache des Problems zu ermitteln. Debug-Protokolle können detailliertere Informationen über den Fehler enthalten. Bitte beziehen Sie sich auf Wie kann ich das Debug-Logging aktivieren in dieser Dokumentation.
Sie werden nicht zu Keycloak umgeleitet.
Wenn Sie auf Mit Keycloak authentifizieren klicken, werden Sie nicht zu Ihrem IdP umgeleitet.
-
Überprüfen Sie Ihre Keycloak-Clientkonfiguration.
-
Stellen Sie sicher, dass
Force Post BindingaufOFFeingestellt ist.
Die Fehlermeldung wird nach der IdP-Anmeldung angezeigt.
Sie werden korrekt auf Ihre IdP-Anmeldeseite umgeleitet und können Ihre Anmeldedaten eingeben, jedoch erhalten Sie danach eine Forbidden-Meldung.
-
Überprüfen Sie das Rancher-Debugprotokoll.
-
Wenn das Protokoll
ERROR: either the Response or Assertion must be signedanzeigt, stellen Sie sicher, dass entwederSign DocumentsoderSign assertionsin Ihrem Keycloak-Client aufONeingestellt ist.
HTTP 502 beim Versuch, auf /v1-saml/keycloak/saml/metadata zuzugreifen.
Dies liegt normalerweise daran, dass die Metadaten nicht erstellt werden, bis ein SAML-Anbieter konfiguriert ist. Versuchen Sie, Keycloak als Ihren SAML-Anbieter zu konfigurieren und zu speichern und dann auf die Metadaten zuzugreifen.
Konfiguration des SAML Single Logout (SLO)
Rancher supports the ability to configure SAML SLO. Options include logging out of the Rancher application only, logging out of Rancher and registered applications tied to the external authentication provider, or a prompt asking the user to choose between the previous options. The steps below outline configuration from the application GUI:
|
The Log Out behavior configuration section only appears if the SAML authentication provider allows for |
-
Sign in to Rancher using a standard user or an administrator role to configure SAML SLO.
-
In the top left corner, click ☰ > Users & Authentication.
-
In the left navigation menu, click Auth Provider.
-
Under the section Log Out behavior, choose the appropriate SLO setting as described below:
Setting Description Log out of Rancher and not authentication provider
Choosing this option will only logout the Rancher application and not external authentication providers.
Log out of Rancher and authentication provider (includes all other applications registered with authentication provider)
Choosing this option will logout Rancher and all external authentication providers along with any registered applications linked to the provider.
Allow the user to choose one of the above in an additional log out step
Choosing this option presents users with a choice of logout method as described above.
SAML- und OpenLDAP-Gruppenberechtigungen
When you configure a SAML authentication provider backed by OpenLDAP, the SAML response might return only a subset of the groups that a user belongs to. The exact groups returned depend on the configuration of your external authentication provider.
Rancher assigns user permissions based strictly on the groups provided in the SAML response.
|
Even if you can search for and view specific OpenLDAP groups in the Rancher UI, you cannot use them to assign permissions if they are missing from the SAML response. To assign permissions successfully, verify that your SAML authentication provider is configured to return all necessary OpenLDAP groups. |