2.4. Management of Client Redirect URIs (URI di reindirizzamento del client)
2.4. Management of Client Redirect URIs (URI di reindirizzamento del client)
OAuth 2.0 [RFC6749] consente in alcuni casi valori redirect_uri non registrati o lascia al server di autorizzazione una propria semantica di corrispondenza. Tuttavia il BCP di sicurezza OAuth [OAUTH-SECURITY-TOPICS] e OAuth 2.1 [OAUTH-V2] richiedono corrispondenza esatta del parametro redirect_uri con l’insieme di URI stabiliti per il client. Ciò consente rilevamento precoce di spoofing ed evita fughe di token e reindirizzamenti aperti. Svantaggio: la gestione dei client può essere più onerosa perché la redirect URI è spesso la parte più volatile della policy del client.
L’esigenza di corrispondenza esatta PUÒ essere attenuata con PAR per i client con credenziali stabilite con il server di autorizzazione. A differenza di una richiesta di autorizzazione classica, il server autentica il client prima dell’inizio del flusso di autorizzazione. Il server di autorizzazione PUÒ consentire a tali client di specificare redirect_uri non pre-registrate, offrendo maggiore flessibilità e semplificando la gestione. Restrizioni sulle redirect_uri fornite spettano al server; ad esempio PUÒ richiedere un prefisso URI o consentire solo una variazione di parametri di query a runtime.
Nota: la possibilità di redirect URI specifiche per transazione è utile anche quando ID client, credenziali e policy sono gestiti da una terza parte fidata (ad es. certificati client). Un client esterno può interagire con un server che si fida di tale parte senza ulteriori passi di registrazione.