Pushed Authorization Requests (PAR)
Impari come le Pushed Authorization Requests (RFC 9126) trasferiscano i parametri di autorizzazione a una chiamata back-channel sicura, migliorando integrità e riservatezza nelle implementazioni OAuth2 avanzate.
Pushed Authorization Requests (PAR) è una lezione OAuth2 & OpenID Connect Deep Dive gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento OAuth2 & OpenID Connect Deep Dive, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso OAuth2 & OpenID Connect Deep Dive include 4 lezioni in totale.
Parti di questa lezione non sono ancora state tradotte e vengono mostrate in inglese.
The Front-Channel Problem
Normally authorization parameters travel in the browser URL to /authorize. They are visible, can be tampered with, and get long when requests are rich (claims, multiple resources). PAR moves them to a trusted back-channel.
What PAR Does
With Pushed Authorization Requests (RFC 9126), the client first POSTs all authorization parameters directly to a new pushed_authorization_request endpoint. The server stores them and returns a request_uri handle.
Step 1: Push the Request
The client authenticates and sends the parameters server-to-server.
POST /par HTTP/1.1
Host: op.example.com
Content-Type: application/x-www-form-urlencoded
Authorization: Basic <client creds>
response_type=code&client_id=app123
&scope=openid profile&redirect_uri=https://app/cb
&state=xyz&code_challenge=...&code_challenge_method=S256Step 2: Receive request_uri
The server validates and stores the request, returning a one-time request_uri plus an expiry.
{
"request_uri": "urn:ietf:params:oauth:request_uri:6esc_11ACC5bwc014ltc14",
"expires_in": 60
}Step 3: Redirect With the Handle
Now the browser redirect to /authorize carries only the client_id and the request_uri — nothing sensitive in the URL.
GET /authorize?client_id=app123
&request_uri=urn:ietf:params:oauth:request_uri:6esc_11ACC5bwc014ltc14Integrity and Confidentiality
Because parameters were pushed over an authenticated TLS channel, the user-agent cannot tamper with them, and they are not exposed in browser history, logs, or referrer headers. This raises assurance significantly.
Client Authentication at PAR
The PAR endpoint requires the client to authenticate (secret, mTLS, or private_key_jwt). This means the authorization request itself is tied to a verified client before the user ever sees the consent screen.
Short-Lived, One-Time Handles
The request_uri is short-lived (often 60 seconds) and intended for single use. After the authorization request consumes it, it cannot be replayed.
PAR and FAPI
PAR is a building block of FAPI 2.0 and financial-grade security profiles, where front-channel tampering must be eliminated. Many high-assurance deployments mandate PAR for all authorization requests.
Discovery Support
Providers advertise PAR via discovery metadata, including pushed_authorization_request_endpoint and optionally require_pushed_authorization_requests to enforce it.
{
"pushed_authorization_request_endpoint": "https://op.example.com/par",
"require_pushed_authorization_requests": true
}When to Use PAR
Adopt PAR for confidential clients in regulated or high-value contexts, when requests carry sensitive parameters, or when you want to guarantee request integrity. It pairs naturally with PKCE and mTLS-bound tokens.
Quick Check
Test your PAR knowledge.
Recap
Pushed Authorization Requests (RFC 9126) move authorization parameters to a back-channel.
- The client POSTs parameters to the PAR endpoint and gets a
request_uri. - The browser redirect carries only
client_id+request_uri. - This guarantees request integrity/confidentiality and authenticates the client up front.
- PAR is a cornerstone of FAPI-grade security.
Impara OAuth2 & OpenID Connect Deep Dive con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 12
- Lezioni
- 48
Domande Frequenti
La lezione «Pushed Authorization Requests (PAR)» è gratuita?
Sì — il testo completo di «Pushed Authorization Requests (PAR)» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso OAuth2 & OpenID Connect Deep Dive, passa a CoddyKit PRO. Il corso OAuth2 & OpenID Connect Deep Dive include 4 lezioni in totale.
Cosa imparerò in «Pushed Authorization Requests (PAR)»?
Impari come le Pushed Authorization Requests (RFC 9126) trasferiscano i parametri di autorizzazione a una chiamata back-channel sicura, migliorando integrità e riservatezza nelle implementazioni OAut… Eserciti OAuth2 & OpenID Connect Deep Dive con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare OAuth2 & OpenID Connect Deep Dive?
Non è richiesta alcuna esperienza precedente. OAuth2 & OpenID Connect Deep Dive su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Pushed Authorization Requests (PAR)»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione OAuth2 & OpenID Connect Deep Dive?
Sì. Ogni lezione OAuth2 & OpenID Connect Deep Dive include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- FAPI e API di livello finanziario
- DPoP (Demonstrating Proof-of-Possession)
- Continuous Access Evaluation Protocol (CAEP)
- Pushed Authorization Requests (PAR)