Dynamische Clientregistrierung

Die dynamische Clientregistrierung ermöglicht der Relying Party (RP) von OpenID Connect (OIDC), sich selbst beim OpenID Connect-Provider (OP) zu registrieren.

Vorbereitende Schritte

Die dynamische Client-Registrierung basiert auf den Spezifikationen der „ OpenID “ und der „Connect Dynamic Client Registration“ ( 1.0 ).

Neue OIDC-Anwendungen werden von einem Tenantadministrator oder einem Benutzer mit Verwaltungszugriff auf den Tenant erstellt. Jetzt kann auch ein API-Client mit dem korrekten Nutzungsrecht eine OIDC-Anwendung über einen Endpunkt für die dynamische Clientregistrierung erstellen. Die erstellte Anwendung ist eine „benutzerdefinierte Anwendung“, bei der als Anmeldemethode „ OpenID -Verbindung“ festgelegt ist.

Der Endpunkt für die dynamische Clientregistrierung befindet sich hier: https://{{tenant}}/v1.0/endpoint/default/client_registration.

Erwägen Sie die Verwendung des neuen Endpunkts für die dynamische Client-Registrierung, sofern dieser Ihren Anforderungen entspricht. Weitere Informationen finden Sie unter „Dynamische Client-Registrierung mit dem neuen „ OpenID “-Connect-Anbieter “.

Informationen zu dieser Task

Um einen Client dynamisch zu registrieren, rufen Sie zunächst ein Erstzugriffstoken ab und registrieren Sie anschließend die neue OIDC-Anwendung mithilfe der Registrierungs-API.

Bevor Sie einen neuen Kunden registrieren, überprüfen Sie bitte die Einstellungen für die dynamische Kundenregistrierung.

Dynamische Einstellungen für die Client-Registrierung

Die Einstellungen für die dynamische Client-Registrierung können so konfiguriert werden, dass die Standardwerte für die dynamische Client-Registrierung festgelegt werden. Siehe „Konfigurieren der Einstellungen für die dynamische OIDC-Client-Registrierung “.

Die entsprechenden Einstellungen sind in der folgenden Tabelle beschrieben.

Feld Beschreibung
Erteilungstypen Die zu verwendenden Zuschussarten, sofern diese nicht in den Daten der dynamischen Mandantenregistrierung angegeben sind. Die unterstützten Authentifizierungstypen sind „Autorisierungscode“, „Implicit“, „Passwort“, „Geräteablauf“, „JWT Bearer“ und „Aktualisierungstoken“.
Anforderungen für ID-Token Standardmäßig werden die ID-Token- und Benutzerdaten abgerufen, sofern diese nicht in der Nutzlast der dynamischen Client-Registrierung angegeben sind.
Token-Claims Die Standard-Claims für Introspektion und JWT-Zugriffstoken, sofern diese nicht in der Nutzlast der dynamischen Client-Registrierung angegeben sind.
Typ von Zugriffstoken Die Art des zu generierenden Zugriffstokens. Die zulässigen Werte sind „default“ und „JWT“.
Signaturalgorithmus für ID-Token Der Algorithmus, der zum Signieren von ID-Tokens verwendet wird, sofern er nicht in der Nutzlast der dynamischen Client-Registrierung angegeben ist.
Benutzerzustimmung Wählen Sie aus, ob die Zustimmung des Benutzers eingeholt werden soll, falls diese nicht in den Daten der dynamischen Client-Registrierung angegeben ist.
Lebensdauer des Zugriffstokens Die Gültigkeitsdauer des Zugriffstokens in Sekunden. Maximal 2147483647, minimal 1.
Lebensdauer des Aktualisierungstokens Die Gültigkeitsdauer des Aktualisierungstokens in Sekunden. Maximal 2147483647, minimal 1.
PKCE-Verifizierung erzwingen Wählen Sie aus, ob PKCE erzwungen werden soll, wenn dies in der Nutzlast der dynamischen Client-Registrierung nicht angegeben ist.
Berechtigung allen Benutzern erteilen Stellen Sie fest, ob alle Benutzer zur Nutzung dieses Clients berechtigt sind, sofern dies nicht in den Daten der dynamischen Client-Registrierung angegeben ist.
Angepasste Clientberechtigungsnachweise zulassen Legt fest, ob benutzerdefinierte Client-Anmeldedaten zulässig sind. Wenn dieser Wert auf „false“ gesetzt ist, können Client-ID und Secret nicht in der Nutzlast für die dynamische Client-Registrierung angegeben werden.

Die Abschnitte „Software-Erklärung“, „Autorisierung anfordern“ und „Zugriffstoken registrieren“ in den Einstellungen sind für diesen „ OpenID Connect“-Anbieter nicht relevant.

Token für Erstzugriff anfordern

Verwenden Sie für den Zugriff auf den Endpunkt einer dynamischen Clientregistrierung ein Zugriffstoken mit der Berechtigung Manage OIDC client registration dynamically.

Erstellen Sie einen API-Client mit der Berechtigung Manage OIDC client registration dynamically. Informationen zum Erstellen des API-Clients finden Sie unter „API-Clients erstellen “.

Rufen Sie nach der Erstellung des API-Clients mithilfe des Ablaufs client_credentials das Zugriffstoken ab. Siehe hierzu das folgende Beispiel:

curl -ki -v https://{{tenant}}/v1.0/endpoint/default/`token -d "grant_type=client_credentials&client_id=<clientId>&client_secret=<clientSecret>"

Neue Anwendung über die Registrierungs-API registrieren

Mithilfe des im vorherigen Abschnitt erstellten Zugriffstokens können Sie eine neue OIDC-Anwendung erstellen.

Die folgende Tabelle enthält die Liste der Clientmetadaten, die gegenwärtig unterstützt werden.

Metadatenname Metadatenbeschreibung Optional Gültige Werte
client_name Anwendungsname wahr Zeichenfolge
client_id Die Client-ID wird automatisch generiert, wenn sie nicht angegeben wird. wahr Zeichenfolge
client_secret Der geheime Clientschlüssel wird automatisch generiert, wenn er nicht angegeben wird. wahr Zeichenfolge
redirect_uris Liste der Umleitungs-URIs falsch Liste der Zeichenfolge-URIs
grant_types Array der Erteilungstypen, die von der Anwendung verwendet werden können. wahr „authorization_code“, „implicit“, „password“, „urn:ietf:params:oauth:grant-type:device_code“, „urn:ietf:params:oauth:grant-type:jwt-bearer“ und „refresh_token“
id_token_signed_response_alg Tokensignieralgorithmus wahr 'RS256', 'RS384', 'RS512', 'HS256', 'HS384', 'HS512', 'ES256', 'ES384', 'ES512', 'PS256', 'PS384', 'PS512'
all_users_entitled Setzen Sie diese Angabe auf 'true', wenn alle Benutzer zur Verwendung dieser Anwendung berechtigt sein sollen. wahr 'true' oder 'false'
jwks_uri URL des JSON Web Key Set-Dokuments des Clients wahr URL
consent_action Benutzerzustimmungsanforderung wahr 'never_prompt' oder 'always_prompt'
enforce_pkce Verwendung von PKCE erzwingen wahr 'true' oder 'false'
id_token_claims Liste der Ansprüche für das ID-Token (id_token) und Benutzerinformationen wahr Liste der Zeichenfolgen
token_claims Liste der Ansprüche für Introspektion (introspect) und JWT-Zugriffstoken wahr Liste der Zeichenfolgen
initiate_login_uri Die URL zum Starten der Anmeldung. wahr URL
token_endpoint_auth_method Clientauthentifizierungsmethode für den Tokenendpunkt. wahr 'default', 'client_secret_basic', 'client_secret_post', 'client_secret_jwt', 'private_key_jwt'

Beispiel für die Registrierung einer neuen Anwendung

curl -ki -H "Authorization: bearer <access-token>" -H "Content-Type:application/json" -X POST https://{{tenant}}/v1.0/endpoint/default/client_registration --data-binary '{"redirect_uris":["https://www.redirect.com"],"client_name":"MyApplication"}'
Antwort
{
	"grant_types": [
		"authorization_code"
	],
	"client_secret_expires_at": "0",
	"registration_client_uri": "https://{{tenant}}/v1.0/endpoint/default/client_registration/<clientId>",
	"client_secret": "<client_secret>",
	"redirect_uris": [
		"https://www.redirect.com"
	],
	"client_id_issued_at": "1586933118",
	"client_name": "MyApplication",
	"registration_access_token": "<access_token>",
	"client_id": "<clientId>",
	"id_token_signed_response_alg": "RS256"
}

Weitere Konfiguration der Anwendung

Nachdem die Anwendung erstellt wurde, stehen Ihnen weitere Optionen zur Verfügung, die Sie für die Anwendung konfigurieren können, beispielsweise Attributzuordnung, Zugriffsrichtlinien, Identitätsquellen, berechtigte Benutzer und andere. Informationen zum Konfigurieren dieser Optionen finden Sie unter Single Sign-on im OpenID Connect-Provider konfigurieren.

Die Option zur Aktualisierung mithilfe der Registrierungs-API wird nicht unterstützt.

OIDC-Anwendung mithilfe der Registrierungs-API lesen

Die Registrierungs-API bietet auch eine Möglichkeit, die OIDC-Anwendung erneut zu lesen.
curl -ki -H "Authorization: bearer <registration-access-token>" https://{{tenant}}/v1.0/endpoint/default/client_registration/<clientId>

OIDC-Anwendung mithilfe der Registrierungs-API löschen

Die Registrierungs-API bietet auch eine Möglichkeit, die OIDC-Anwendung zu löschen.

curl -ki -H "Authorization: bearer <registration-access-token>" -X DELETE https://{{tenant}}/v1.0/endpoint/default/client_registration/<clientId>

Das Token für den Registrierungszugriff ist abgelaufen.

Fordern Sie, wenn das Registrierungszugriffstoken abläuft, ein neues Zugriffstoken an. Siehe „Erste Zugriffstoken abrufen “.