Ti trovi qui:
API (Abilita impostazioni OAuth): Richiedi chiave di prova per il controllo dello scambio di codice (PKCE)
Un'estensione di protezione OAuth 2.0 che utilizza un "verificatore di codice" crittografato creato dinamicamente per assicurarsi che l'applicazione che scambia un codice di autorizzazione con un token di accesso sia la stessa che ha originariamente richiesto il codice.
Nome controllo
Applicazioni connesse: API (Abilita impostazioni OAuth): Richiedi chiave di prova per lo scambio di codice (PKCE)
Configurazione consigliata
Richiedere l'estensione Proof Key for Code Exchange (PKCE) per i flussi di autorizzazione supportati - Selezionato.
Panoramica sul controllo
PKCE è un'estensione di sicurezza per OAuth 2.0 che utilizza un "verificatore di codice" crittografico creato dinamicamente per garantire che l'applicazione che scambia un codice di autorizzazione con un token di accesso sia la stessa applicazione che ha originariamente richiesto il codice.
Rischio per la sicurezza se non configurato
Senza PKCE, i client pubblici (come le app mobili o le app a pagina singola) sono vulnerabili all'"Intercettazione codice di autorizzazione" perché non possono memorizzare in modo sicuro un segreto client per verificare la loro identità durante lo scambio di token.
Scenari di minaccia
Un aggressore intercetta un codice di autorizzazione riuscito tramite uno schema URI personalizzato o un reindirizzamento del browser e lo scambia immediatamente con un token di accesso valido prima che l'applicazione legittima possa farlo, eseguendo di fatto un hijack della sessione dell'utente.
Intervallo di punteggi CVSS stimato
Critico (9.0–10.0).
Considerazioni sull'impatto del rischio
Un'intercettazione riuscita porta all'acquisizione totale dell'account nell'ambito dell'applicazione, consentendo potenzialmente all'avversario di esfiltrare informazioni personali sensibili o di eseguire transazioni non autorizzate come utente compromesso.
Rischio maggiore quando
Il rischio è elevato per le applicazioni mobili e le applicazioni a pagina singola in cui il codice viene trasmesso su browser di sistema potenzialmente non sicuri o ambienti di dispositivi condivisi.
Basso rischio quando
Il rischio è considerato più basso per i "client riservati" (integrazioni da server a server) che possono archiviare e utilizzare in modo sicuro un segreto client per autenticare lo scambio di token, anche se PKCE è ancora consigliato come difesa in profondità.
Considerazioni su Business e integrazione
L'applicazione di PKCE richiede agli sviluppatori di aggiornare la logica di handshake OAuth dell'applicazione per generare e inviare i parametri code_challenge e code_verifier, che potrebbero richiedere l'aggiornamento delle librerie mobili legacy.
Rimedio consigliato
Accedere alle impostazioni dell'applicazione connessa in Salesforce e attivare la casella di controllo "Richiedi l'estensione Proof Key for Code Exchange (PKCE)".
Guida all'esame dello stato della sicurezza
Security Health Review identifica PKCE come base di riferimento obbligatoria per tutte le moderne integrazioni rivolte al pubblico per chiudere la lacuna della "code injection" e garantire la verifica dell'identità High Assurance per gli utenti mobili e Web.

