Erstellen Sie die vorab genehmigte Anfrage

Verwenden Sie diese Informationen, um eine vorab autorisierte JWT-Anfrage zu erstellen, die im Ablauf mit vorab autorisiertem Code verwendet wird.

Ansprüche aus vorab autorisierten Anforderungs-Payloads

Die Nutzdaten der vorab autorisierten Anfrage müssen die folgenden Claims enthalten.

Tabelle 1. MUST-Ansprüche
Name des Anspruchs Beschreibung Gültige Werte
iss Eindeutige Kennung des Ausstellers der Anmeldeinformationen, der das JWT ausgestellt hat Gültige URI des Ausstellers der Anmeldedaten.
sub Subjekt-ID des Prinzipals Die eindeutige ID eines Benutzers
exp JWT-Ablaufzeit Die Anzahl Sekunden ab 1970-01-01T0:0:0Z, gemessen in UTC.
Hinweis: Die Ablaufzeit des JWT darf nicht mehr als 3600 Sekunden in der Zukunft liegen.
jti JWT-ID Eine nach dem Zufallsprinzip generierte opake Zeichenfolge.

Die Nutzdaten der vorab autorisierten Anfrage können die folgenden Claims enthalten.

Tabelle 2. MAY behauptet
Name des Anspruchs Beschreibung Gültige Werte
aud Der Aussteller des Autorisierungsservers wird unter einem bekannten Endpunkt veröffentlicht. Gültige URI des Ausstellers der Anmeldedaten.
sub_type Typ der Hauptfachkennung. Entweder „uid“, „username“ oder „ 'externalId' “. Die Standardeinstellung lautet „uid“.
Realm Subjektrealm des Prinzipals Der Identitätsquellbereich, zu dem das sub gehört.
iat JWT-Erstellungszeit Die Anzahl Sekunden ab 1970-01-01T0:0:0Z, gemessen in UTC.
Hinweis: Der Zeitpunkt der JWT-Erstellung darf nicht mehr als 3600 Sekunden in der Vergangenheit liegen.
tx_code Überschreiben der vorab autorisierten Einstellungen durch den Aussteller der Zugangsdaten. Ein JSON-Objekt, das die in der Tabelle „Transaktionscode-Angaben“ beschriebenen Angaben enthält.
Ausstellungsstaat Ein undurchsichtiger Wert, der den Kontext des Ausstellers der Anmeldedaten mit dem generierten Zugriffstoken verknüpft. Beliebige Zeichenfolge. Es kann sich auch um ein JWT handeln.

Die tx_code Anforderung wird erst wirksam, wenn eine solche Überschreibung in den vorab festgelegten Einstellungen zulässig ist. In diesem Modus wird bei Einreichung des tx_code Antrags ein Transaktionscode generiert. In den Tabellen zu den Transaktionscodes werden mögliche Übersteuerungsoptionen beschrieben.

Tabelle 3. Ansprüche aus Transaktionscodes
Name des Anspruchs Beschreibung Gültiger Wert
Eingabemodus Ermitteln Sie den Zeichensatz des Transaktionscodes. Entweder „numerisch“ (nur Zahlen) oder „Text“ (alphanumerisch)
Länge Ermitteln Sie die Länge des Transaktionscodes. Ein Zahlenwert zwischen 4 und 10
Beschreibung Die Meldung, die die Wallet-Anwendung dem Endnutzer anzeigen soll. Beliebige Zeichenfolge
Kanal Beschreiben Sie, wie der Transaktionscode an den Endbenutzer übermittelt wird. Ein JSON-Objekt mit den in Tabelle 4 unten beschriebenen Angaben.

Für die Übermittlung des Transaktionscodes stehen drei Kanäle zur Verfügung: E-Mail, SMS oder andere vom Aussteller der Zugangsdaten festgelegte Mittel. Bei der letzten Option gibt der Autorisierungsserver lediglich den Transaktionscode an den Aussteller der Zugangsdaten zurück.

Tabelle 4. Behauptungen des Senders
Name des Anspruchs Beschreibung Gültiger Wert
Typ Kanalart zur Übermittlung des Transaktionscodes an den Endbenutzer. Entweder „E-Mail“, „SMS“ oder „Aussteller“
Wert E-Mail-Adresse des Endnutzers (bei type = E-Mail) oder Telefonnummer (bei Typ = sms). Gültige E-Mail-Adresse oder Telefonnummer.

Beispiel für die Nutzdaten einer vorab autorisierten Anfrage

{
  "iss": "https://www.credential-issuer.com",
  "sub": "user@idsource.com",
  "sub_type": "username",
  "aud": "https://sometenant.ice.com/oauth2",
  "exp": 1324298520,
  "jti": "araiov8werli2awerlj",
  "tx_code": {
    "input_mode": "text",
    "length": 6,
    "description": "Please provide this transaction code:",
    "channel": {
       "type": "email",
       "value": "bob@ibm.com"
    },
  },
  "issuer_state": "sa82jpawfagnns"
}

Unterstützte Algorithmen

Das JWT für die vorab autorisierte Anfrage kann mit einem der folgenden Algorithmen signiert werden: RS256, RS384, RS512, ES256, ES384, ES512, PS256, PS384 und PS512.

Dieses JWT wird anhand der JWKS-URI des Ausstellers der Anmeldedaten validiert. Stellen Sie sicher, dass das signierte JWT den kid Header enthält, um den verwendeten Schlüssel eindeutig zu identifizieren, da die JWKS-URI möglicherweise mehrere Schlüssel veröffentlicht. Die Konfiguration der JWKS-URI des Zertifikatsausstellers erfolgt in den Verbundseinstellungen. Stellen Sie sicher, dass die Kennung des Ausstellers mit dem iss Anspruch in der Nutzlast der Anfrage übereinstimmt.

Beispiel für Anforderung

Nachdem das JWT für die Vorabautorisierung erstellt wurde, kann eine Anfrage an den Endpunkt für die Vorabautorisierung gesendet werden, um einen Vorabautorisierungscode zu generieren.
 curl -ki -X POST https://<tenantId>/oauth2/preauth --data "eyJhbGciOiJFUzI1NiIsImtpZCI6IjE2In0.eyJpc3Mi..." -H "Content-Type:application/jwt"