Rich Authorization Requests (RFC 9396)

Rich Authorization Requests (RAR) sind eine OAuth-Erweiterung nach RFC 9396, mit der ein Client feingranulare Berechtigungen als strukturierte Angaben statt als einfache Scopes anfordert.

Klassische OAuth-Scopes wie «payments» sagen wenig darüber, welche Zahlung erlaubt ist. RFC 9396, veröffentlicht im Mai 2023, führt dafür den Parameter authorization_details ein: ein JSON-Array, in dem jeder Eintrag einen Typ und die konkreten Angaben enthält, etwa Betrag, Währung, Empfänger oder Konto. Der Autorisierungsserver zeigt diese Angaben dem Nutzer zur Zustimmung und übernimmt sie in das ausgestellte Token.

Für KI-Agenten ist RAR der naheliegende Weg, den Rahmen einer einzelnen Handlung bereits beim Zugang festzulegen. Die Angaben bleiben aber Teil eines Zugangstokens; über den Zeitpunkt der Handlung, die Ausführung und den Widerruf sagen sie für sich genommen nichts aus.

Beispiel

Ein Agent will eine Rechnung über 480 Franken an einen bestimmten Lieferanten bezahlen. Er fordert ein Token mit authorization_details an: Typ «payment_initiation», Betrag 480 Franken, Empfänger mit IBAN. Die Nutzerin bestätigt genau diese Zahlung, und die Bank führt nur sie aus.

Abgrenzung

Ein Scope erlaubt eine Kategorie, RAR eine konkret beschriebene Handlung. Ein Agenten-Mandat geht weiter: Es gilt über mehrere Handlungen, nennt Auftraggeber und Agent, lässt sich über eine Statusliste widerrufen und wird mit Entscheid und Beleg zu einem prüfbaren Nachweis.

In der Praxis

  • Beschreiben Sie in authorization_details die konkreten Grenzen, nicht nur den Typ: Betrag, Währung, Empfänger und Gültigkeit.
  • Zeigen Sie der Nutzerin die Angaben bei der Zustimmung lesbar an, damit sie weiss, was sie erlaubt.
  • Halten Sie die erteilte Erlaubnis zusätzlich als signierten Nachweis fest, damit sie auch ausserhalb des Autorisierungsservers prüfbar bleibt.

Bezug zu KYA

KYA prüft keine OAuth-Tokens, aber dieselbe Frage auf Ebene der Nachweise: Lag die Handlung im Umfang? Wer RAR einsetzt, kann die authorization_details in ein Mandat übernehmen und so dieselben Grenzen unabhängig prüfbar machen.

Zugehöriger Prüfschritt: Umfang der Handlung (intent_scope). Liegt die Handlung innerhalb von Handlungstyp, Betragsgrenze, Währung und Gegenpartei des Mandats?

Jetzt prüfen: passendes Beispiel öffnen

Häufige Fragen

Was ist der Unterschied zwischen RAR und OAuth-Scopes?

Scopes sind einfache Zeichenketten für Kategorien wie «lesen» oder «zahlen». RAR beschreibt eine Berechtigung als strukturiertes Objekt mit konkreten Angaben, etwa Betrag und Empfänger einer Zahlung.

Wo wird RAR eingesetzt?

Vor allem im Zahlungsverkehr und im Open Banking, wo einzelne Zahlungen oder Kontozugriffe genau beschrieben und bestätigt werden müssen. Für KI-Agenten ist RAR interessant, weil es den Rahmen einer Handlung früh festlegt.

Ersetzt RAR ein Agenten-Mandat?

Nein. RAR regelt den Zugang zu einer Schnittstelle. Ein Mandat beschreibt den Auftrag über mehrere Handlungen, ist widerrufbar und wird mit Entscheid und Beleg zu einem Nachweis, den Dritte prüfen können.

Kann KYA authorization_details prüfen?

KYA prüft keine OAuth-Tokens. Die Grenzen aus authorization_details lassen sich aber in ein Mandat übernehmen; dann prüft KYA, ob die Handlung in diesem Umfang lag.

Quellen

  1. RFC 9396: OAuth 2.0 Rich Authorization Requests

Verwandte Begriffe