Errori di autorizzazione OAuth 2.0
Durante l'autorizzazione OAuth si possono verificare errori. Ad esempio, un utente nega l'accesso all'applicazione connessa o i parametri di richiesta non sono corretti. Quando si verificano errori, il server di autorizzazione invia un errore all'URL di richiamata con un codice di errore.
Versioni (Edition) richieste
| Disponibile in: Salesforce Classic e Lightning Experience |
| Disponibile in: tutte le versioni |
Gli errori di autorizzazione OAuth hanno diversi formati, in base al flusso di autorizzazione. Di seguito sono riportati alcuni esempi per ogni flusso OAuth supportato.
- Questo errore si è verificato in un flusso del server Web OAuth 2.0 poiché l'utente ha negato l'accesso all'applicazione connessa:
https://www.mycustomerorderstatus/code_callback.jsp?error=access-denied - Questo è lo stesso errore in un flusso utente-agente OAuth 2.0:
https://www.customercontactinfo.com/user_callback.jsp#error=access_denied - Se si verifica un errore nel flusso bearer JWT OAuth 2.0, il server di autorizzazione risponde con un messaggio di errore OAuth standard. La risposta include i motivi per cui il token è considerato non valido. Per ulteriori informazioni, vedere https://tools.ietf.org/html/rfc7523. Di seguito è riportato un esempio di messaggio di errore in formato JSON.
HTTP/1.1 400 Bad Request Content-Type: application/json Cache-Control: no-store { "error":"invalid_grant", "error_description":"Audience validation failed" } - Di seguito è riportato un esempio di errore restituito da un flusso token di aggiornamento OAuth 2.0.
{"error":"invalid_grant","error_description":"expired access/refresh token"} - Questo esempio di risposta con messaggio di errore si verifica durante l'elaborazione dell'asserzione bearer SAML.
HTTP/1.1 400 Bad Request Content-Type: application/json Cache-Control: no-store { "error":"invalid_grant", "error_description":"Audience validation failed" } -
Ecco un esempio di errore da un flusso asserzioni SAML. Questo flusso include un URI dell'errore ovvero un link al Validatore asserzione SAML. Il validatore contiene ulteriori informazioni sull'errore. L'URI dell'errore viene restituito solo quando Salesforce è in grado di analizzare l'asserzione.
{"error_uri":"https://yourInstance.salesforce.com/setup/secur/SAMLValidationPage.apexp", "error":"invalid_grant","error_description":"invalid assertion"}
Codici di errore
Per facilitare la risoluzione dei problemi che hanno causato un errore, rivedere i seguenti codici di errore e cause.
| Errore | Causa |
|---|---|
access_denied
|
L'utente ha negato l'accesso all'applicazione client. |
authorization_pending
|
Per il flusso dispositivo, l'utente non ha ancora approvato l'accesso al dispositivo. |
CSRF
|
Salesforce ha rilevato un possibile attacco CSRF (Cross-Site Forgery Request). Non è stato possibile verificare che la richiesta di accesso provenisse dal dominio corretto. |
ERROR_CREATING_USER
|
Si è verificato uno di questi scenari.
|
immediate_unsuccessful
|
Il parametro immediate è impostato su true e l'utente non ha eseguito l'accesso o non ha precedentemente approvato l'accesso del client. |
inactive_org
|
L'organizzazione è bloccata, chiusa o sospesa. |
inactive_user
|
L'utente è impostato come inattivo dall'amministratore dell'organizzazione. |
invalid_app_access
|
Un amministratore non ha approvato l'accesso all'app da parte dell'utente. |
invalid_assertion_type
|
Il tipo di asserzione specificato non è supportato. |
invalid_client
|
Segreto client non valido. |
invalid_client_id
|
Identificatore client non valido. |
invalid_grant
|
Può essere una delle seguenti opzioni:
|
invalid_request
|
Uno dei seguenti errori.
|
invalid_scope
|
Ambito richiesto non valido, sconosciuto o in un formato non corretto. |
NO_ACCESS
|
Impossibile trovare un utente. Ad esempio, non è presente alcun nome utente. |
No_OAuth_State
|
Lo stato OAuth è stato alterato o è assente. |
No_Openid_Response
|
L'URL endpoint info utente non è valido. |
rate_limit_exceeded
|
Numero di tentativi di accesso superato. |
redirect_uri_mismatch
|
L'URI di reindirizzamento non corrisponde alla definizione dell'applicazione connessa. |
redirect_uri_missing
|
L'URI di reindirizzamento non è stato specificato. |
REGISTRATION_HANDLER_ERROR
|
Per i provider di autenticazione, è presente un problema con l'Apex Code dell'handler di registrazione. |
server_error
|
Il numero di richieste di autorizzazione da parte dell'applicazione client supera il limite orario. |
slow_down
|
Per il flusso dispositivo, l'applicazione client sta eseguendo il polling del server di autorizzazione con maggiore frequenza rispetto all'intervallo minimo consigliato. |
unsupported_response_type
|
Il tipo di risposta richiesto non è supportato. |

