9. Resource Server-Provided Nonce (Vom Ressourcenserver bereitgestellte Nonce)
9. Resource Server-Provided Nonce (Vom Ressourcenserver bereitgestellte Nonce)
Ressourcenserver können ebenfalls wählen, einen Nonce-Wert zur Aufnahme in gesendete DPoP-Proofs bereitzustellen. Der Ressourcenserver stellt die Nonce unter Verwendung des DPoP-Nonce-Headers auf die gleiche Weise bereit wie der Autorisierungsserver (beschrieben in den Abschnitten 8 und 8.2). Die Fehlersignalisierung erfolgt wie in Abschnitt 7.1 beschrieben. Der Ressourcenserver verwendet dazu den HTTP 401 (Unauthorized) Fehlercode und die entsprechenden WWW-Authenticate: DPoP und DPoP-Nonce Werte.
Zum Beispiel kann der Ressourcenserver als Antwort auf eine Ressourcenanforderung ohne Nonce, wenn der Ressourcenserver eine Nonce verlangt, einen DPoP-Nonce-Wert wie den folgenden zurückgeben, um einen Nonce-Wert zur Aufnahme in den DPoP-Proof bereitzustellen. Das folgende Beispiel verwendet "\" für den Zeilenumbruch gemäß [RFC8792].
HTTP/1.1 401 Unauthorized
WWW-Authenticate: DPoP error="use_dpop_nonce", \
error_description="Resource server requires nonce in DPoP proof"
DPoP-Nonce: eyJ7S_zG.eyJH0-Z.HX4w-7v
Abbildung 24: HTTP-401-Antwort auf eine Ressourcenanforderung ohne Nonce
Beachten Sie, dass von Autorisierungsservern und Ressourcenservern bereitgestellte Nonces getrennt sind und nicht miteinander verwechselt werden sollten, da eine Nonce nur von dem Server akzeptiert wird, der sie ausgestellt hat. Gleichermaßen sollten, wenn ein Client mehrere Autorisierungsserver oder Ressourcenserver verwendet, die von einem Server ausgestellten Nonces nur bei diesem Aussteller verwendet werden. Entwickler sollten auch darauf achten, die DPoP-Nonce nicht mit der OpenID Connect ID Token Nonce [OpenID.Core] zu verwechseln.