
![[8.5.5.4 oder höher]](../ng_v8554.gif)
OpenID Connect-Provider im Liberty-Profil konfigurieren
Sie können einen Liberty Profile-Server so konfigurieren, dass er als OpenID Connect-Provider oder Autorisierungsserver fungiert, um vom Web-SSO zu profitieren.
Informationen zu diesem Vorgang
Wenn Sie einen Liberty Profile-Server so konfigurieren möchten, dass er als OpenID Connect-Provider agiert, müssen Sie neben anderen Konfigurationsdaten das Feature openidConnectServer-1.0 aktivieren.
Vorgehensweise
- Fügen Sie das Liberty-Feature openidConnectServer-1.0 und alle weiteren benötigten Features zur
Datei server.xml hinzu.
Das Feature ssl-1.0 ist auch für das Feature openidConnectServer-1.0 erforderlich.
<feature>openidConnectServer-1.0</feature> <feature>ssl-1.0</feature>
- Definieren Sie einen OAuth-Service-Provider. OpenID Connect basiert auf dem
OAuth-2.0-Protokoll, sodass Sie einen gültigen OAuth-Service-Provider konfigurieren
müssen. Zur Konfiguration eines OAuth-Service-Providers gehören die entsprechenden Elemente
oauth-roles und oauthProvider sowie Benutzerregistryelemente. Einem Benutzer, der berechtigt ist, OpenID
Connect zu verwenden, muss die Rolle authenticated oauth-role zugeordnet sein.
Weitere Informationen finden Sie unter OAuth-Service-Provider definieren.
Die OAuth-Metadaten werden für OpenID Connect aktualisiert. Die wichtigsten Zusätze sind Zusätze zu den Clientmetadaten. Wenn Sie für die Clientregistrierung den Modus databaseStore verwenden, lesen Sie die Informationen unter Akzeptieren von Clientregistrierungsanforderungen durch einen OpenID Connect-Provider konfigurieren. Bei der Verwaltung von Clients sollten Sie sich an die Anweisungen in dem Dokument halten. Wenn Sie für die Clientregistrierung den Modus localStore verwenden, können Sie scope, preAuthorizedScope, grantTypes, responseTypes, introspectTokens und functionalUserId sowie weitere Attribute registrieren.
- Fügen Sie ein Element openidConnectProvider hinzu, dessen Attribut oauthProviderRef auf den
konfigurierten oauthProvider verweist. Auf jeden oauthProvider kann nur
ein openidConnectProvider verweisen. Zwei oder mehr
Elemente openidConnectProvider können nicht von demselben
oauthProvider referenziert werden. Die Attribute name und
secret des Clientelements müssen mit der Client-ID
(client ID) und dem geheimen Clientschlüssel (client secret) des
entsprechenden OpenID-Connect-Clients übereinstimmen. In diesem Beispiel wird der Standard-OpenID-Connect-Client des
Liberty Profile-Servers verwendet. Anmerkung: Der OP in diesem Beispiel erwartet, dass der SSL-Port des Clients auf 443 gesetzt ist.
<openidConnectProvider id="OidcConfigSample" oauthProviderRef="OAuthConfigSample" /> <oauthProvider id="OAuthConfigSample"> <localStore> <client name="client01" secret="{xor}LDo8LTor" displayname="client01" scope="openid profile email" redirect="https://server.example.com:443/oidcclient/redirect/client01"/> </localStore> </oauthProvider>
Anmerkung: Ein gültiger Client muss seinen Namen, seine Weiterleitung, seinen Bereich und seinen geheimen Schlüssel für den Grant-Typ authorization_code registrieren. - Konfigurieren Sie den Truststore des Servers so, dass die Unterzeichnerzertifikate der unterstützten OpenID-Connect-Relying-Partys oder -Clients aufgenommen werden. Informationen zu Keystores finden Sie unter SSL-Kommunikation für das Liberty-Profil aktivieren.
- Modifizieren Sie die SSL-Konfiguration des Servers so, dass der konfigurierte Truststore verwendet wird.
<sslDefault sslRef="DefaultSSLSettings" /> <ssl id="DefaultSSLSettings" keyStoreRef="myKeyStore" trustStoreRef="myTrustStore" /> <keyStore id="myKeyStore" password="{xor}Lz4sLCgwLTs=" type="jks" location="${server.config.dir}/resources/security/BasicKeyStore.jks" /> <keyStore id="myTrustStore" password="{xor}Lz4sLCgwLTs=" type="jks" location="${server.config.dir}/resources/security/BasicTrustStore.jks" />
OpenID Connect ist für die Verwendung der vom Server angegebenen Standard-SSL-Konfiguration konfiguriert. Die Standard-SSL-Konfiguration für den Server muss daher den für OpenID Connect konfigurierten Truststore verwenden.
Die Benutzereinwilligungserklärung von OpenID Connect ist als Plug-in verfügbar, sodass Provider eine eigene Einwilligungserklärung erstellen und pflegen können. Da dieses Formular über SSL abgerufen wird, müssen Sie den Truststore so konfigurieren, dass das Unterzeichnerzertifikat des Servers, der die Einwilligungserklärung bereitstellt, aufgenommen wird. Wenn das Standardformular für die Einwilligungserklärung verwendet wird und der für OpenID Connect verwendete Truststore nicht der vom Liberty Profile-Server verwendete Keystore ist, müssen Sie das Unterzeichnerzertifikat des Liberty Profile-Servers in den OpenID-Connect-Truststore importieren.
Weitere Konfigurationsoptionen für den OpenID Connect-Provider finden Sie unter Konfigurationselemente in der Datei 'server.xml'.
Anmerkung: Für die Verwendung von OpenID Connect muss das Attribut scope in der Bereichsliste den Eintrag openid enthalten.
Ergebnisse
Untergeordnete Themen
OpenID Connect-Provider als OAuth 2.0-Berechtigungsserver verwenden
Ein OpenID Connect-Provider kann als normaler OAuth 2.0-Berechtigungsprovider für die Ausgabe von OAuth 2.0-Zugriffstoken (access_token) verwendet werden und unterstützt alle OAuth 2.0-Grant-Typen.Akzeptieren von Erkennungsanforderungen durch einen OpenID Connect-Provider konfigurieren
Der Erkennungskonfigurationsendpunkt macht Informationen zu der vom OpenID Connect-Provider-Server (OP-Server) unterstützten Funktionalität verfügbar.Vom UserInfo-Endpunkt zurückgegebene Ansprüche konfigurieren
Sie können einen OpenID Connect-Provider im Liberty-Profil konfigurieren, um die vom UserInfo-Endpunkt zurückgegebenen Ansprüche anzupassen.OpenID-Provider für OAuth-Anforderungen mit zwei Beteiligten konfigurieren
Beim typischen OAuth-Datenfluss gibt es drei "Beteiligte" oder Phasen der Interaktion zwischen einem Client und einem Autorisierungsserver. Bei OAuth-Szenarien mit zwei Beteiligten verwendet der Client vorab autorisierte Bereiche, sodass keine Interaktion mit dem Benutzer erforderlich ist und einer der Beteiligten bzw. eine der Interaktionsphasen des typischen Datenflusses entfällt. Konkret bedeutet dies, dass der Benutzer sich nicht gegenüber dem Autorisierungsserver authentifizieren muss und keine Zustimmung zur gemeinsamen Nutzung der von den angeforderten Bereichen angegebenen Informationen geben muss. Stattdessen werden alle angeforderten Bereichsparameter als vorab autorisiert betrachtet und automatisch zum Anforderungstoken hinzugefügt, das dann an den Autorisierungsserver gesendet wird.OpenID Connect-Provider für das Signieren von ID-Token mit dem Algorithmus RSA-SHA256 konfigurieren
Sie können einen OpenID Connect-Provider so konfigurieren, dass er den Algorithmus RS256 zum Signieren von ID-Token verwendet.OpenID Connect-Provider für die Annahme von JWT (JSON Web Token) für Berechtigungsgrants konfigurieren
Sie können einen Liberty Profile-Server, der als OpenID Connect-Provider fungiert, so konfigurieren, dass er ein JSON Web Token im Tausch für ein Zugriffstoken akzeptiert.Akzeptieren von Clientregistrierungsanforderungen durch einen OpenID Connect-Provider konfigurieren
Der Clientregistrierungsendpunkt ist ein von einem Administrator verwalteter Service zum Registrieren, Aktualisieren, Löschen und Abrufen von Informationen zu einer OpenID-Connect-Relying-Party, die den OpenID Connect-Provider verwenden möchte. Der Registrierungsprozess kann wiederum Informationen für die Relying Party bereitstellen, einschließlich der OAuth-2.0-Client-ID und des geheimen Clientschlüssels, sofern diese Informationen nicht angegeben sind.Angepasste OpenID Connect-Formulare
Sie können die formularbasierte Standardanmeldeseite für die Benutzerauthentifizierung ersetzen oder ein eigenes Benutzereinwilligungsformular für die Erfassung von Clientberechtigungsdaten entwickeln.Benutzer authentifizieren
Der OpenID Connect-Provider unterstützt die traditionelle formulargestützte J2EE-Benutzerauthentifizierung (Java™ Enterprise Edition).

Nutzungsbedingungen für Information Center | Feedback

http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_config_oidc_op
Dateiname: twlp_config_oidc_op.html