Loading
Identification de vos utilisateurs et gestion de l’accès
Erreurs d'autorisation OAuth 2.0

Erreurs d'autorisation OAuth 2.0

Des erreurs peuvent se produire durant l'autorisation OAuth. Par exemple, un utilisateur refuse l'accès à l'application connectée ou les paramètres de requête sont incorrects. En cas d'erreur, le serveur d'autorisation envoie une erreur à l'URL de rappel avec un code d'erreur.

Éditions requises

Disponible avec : Salesforce Classic et Lightning Experience
Disponible avec : Toutes les éditions

Le format des erreurs d'autorisation OAuth diffère selon le flux d'autorisation. Voici des exemples de chaque flux OAuth pris en charge.

  • Cette erreur provient d'un flux de serveur Web OAuth 2.0, dans lequel l'utilisateur a refusé l'accès à l'application connectée :
    https://www.mycustomerorderstatus/code_callback.jsp?error=access-denied
  • Voici la même erreur provenant d'un flux utilisateur-agent OAuth 2.0 :
    https://www.customercontactinfo.com/user_callback.jsp#error=access_denied
  • Si une erreur se produit dans le flux du porteur JWT OAuth 2.0, le serveur d'autorisation répond avec une réponse d'erreur OAuth standard. La réponse indique les raisons pour lesquelles le jeton est considéré comme non valide. Pour plus d'informations, voir https://tools.ietf.org/html/rfc7523. Cet exemple montre une réponse d'erreur sous le format JSON.
    HTTP/1.1 400 Bad Request
    Content-Type: application/json
    Cache-Control: no-store
    {
      "error":"invalid_grant",
      "error_description":"Audience validation failed"
    }
  • Voici un exemple d'erreur renvoyée par un flux de jeton d'actualisation OAuth 2.0.
    {"error":"invalid_grant","error_description":"expired access/refresh token"}
  • Cette réponse d'erreur a été généré pendant le traitement de l'assertion du porteur SAML.
    HTTP/1.1 400 Bad Request
    Content-Type: application/json
    Cache-Control: no-store
    {
      "error":"invalid_grant",
      "error_description":"Audience validation failed"
    }
  • Voici un exemple d'erreur d'un flux d'assertion SAML. Ce flux indique un URI d'erreur, qui est un lien vers le Validateur d'assertion SAML. Le validateur inclut des informations plus détaillées sur l'échec. L'URI d'erreur est renvoyé uniquement lorsque Salesforce peut analyser l'assertion.

    {"error_uri":"https://yourInstance.salesforce.com/setup/secur/SAMLValidationPage.apexp",
    "error":"invalid_grant","error_description":"invalid assertion"} 

Codes d'erreur

Pour faciliter le dépannage des causes d'une erreur, consultez les codes et les causes d'erreur ci-dessous.

Erreur Motif
access_denied L'utilisateur a refusé l'accès à l'application cliente.
authorization_pending Pour le flux d'appareil, l'utilisateur n'a pas encore approuvé l'accès à l'appareil.
CSRF Salesforce a détecté une attaque potentielle en falsification de requête inter-site (CSRF). Nous n'avons pas pu vérifier si la requête de connexion provient du domaine correct.
ERROR_CREATING_USER

L'une des conditions suivantes est vraie.

  • Le nom d'utilisateur n'est pas unique.
  • Un contact existe pour cette adresse e-mail.
  • L'utilisateur ne possède pas de licence.
  • Vous avez dépassé la limite en stockage de votre organisation.
immediate_unsuccessful Le paramètre immediate est défini sur true et l'utilisateur n'est pas connecté ou n'a pas approuvé l'accès du client au préalable.
inactive_org L'organisation est bloquée, fermée ou suspendue.
inactive_user L'utilisateur est défini comme inactif par l'administrateur de l'organisation.
invalid_app_access L'accès de l'utilisateur à cette application n'a pas été approuvé par un administrateur.
invalid_assertion_type Le type d'assertion spécifié n'est pas pris en charge.
invalid_client Le secret client n'est pas valide.
invalid_client_id Les identifiants du client ne sont pas valides.
invalid_grant

L'un des problèmes suivants :

  • Le code d'autorisation n'est pas valide. Pour le flux d'assertion SAML, assurez-vous que le client envoie une assertion et un assertion_type codés en URL.
  • Les identifiants de l'utilisateur ne sont pas valides.
  • L'utilisateur n'est pas valide.
  • L'assertion n'est pas valide.
  • L'audience n'est pas valide.
  • Heures de connexion IP restreintes ou non valides.
  • Indique que la valeur code_verifier n'est pas valide (pas codée en base64url, par exemple) ou ne correspond pas au vérificateur valide pour la valeur code_challenge donnée.
  • Indique qu'aucun code_challenge n'a été spécifié et, par conséquent, que le code_verifier n'était pas attendu, mais a été spécifié.
  • L'utilisateur n'a pas approuvé l'application connectée.
  • L'authentification a échoué.
  • Le flux d'appareil n'est pas activé pour l'application connectée ou le serveur Salesforce ne pas accorder de jeton accès pour le flux d'appareil.
  • Le jeton d'actualisation ou d'accès a expiré pour le flux de jetons d'actualisation.
  • Pour le flux Identifiants client, la requête n'est pas prise en charge pour le domaine hôte. Pour ce flux, les requêtes à https://login.salesforce.com et https://test.salesforce.com ne sont pas prises en charge. Utilisez à la place votre URL Mon domaine.
invalid_request

L'une des erreurs suivantes :

  • HTTPS est requis.
  • HTTP GET est requis.
  • HTTP POST est requis.
  • La valeur code_challenge n'est pas valide, par exemple elle n'est pas codée en base64.
  • Le flux ne prend pas en charge et n'attend pas de paramètre code_challenge.
  • Hors plage n'est pas prise en charge.
  • Les flux de porteur JWT et de porteur d'assertion SAML nécessitent une étendue refresh_token. Installez et préautorisez l'application.
  • Le code de l'appareil spécifié dans la requête d'interrogation n'est pas valide pour le flux d'appareil.
  • Le paramètre scope n'est pas pris en charge pour le flux nom d'utilisateur-mot de passe.
  • Le type de secret n'est pas pris en charge pour le flux de jetons d'actualisation.
invalid_scope L'étendue demandée n'est pas valide, est inconnue ou mal formée.
NO_ACCESS L'utilisateur est introuvable. Par exemple, le nom d'utilisateur n'existe pas.
No_OAuth_State L'état OAuth a été piraté ou est manquant.
No_Openid_Response L'URL du point de terminaison d'informations utilisateur n'est pas valide.
rate_limit_exceeded Le nombre de tentatives de connexion est dépassé.
redirect_uri_mismatch L'URI de redirection ne correspond pas à la définition de l'application connectée.
redirect_uri_missing L'URI de redirection n'a été fourni.
REGISTRATION_HANDLER_ERROR Pour les fournisseurs d'authentification, un problème avec le code Apex de votre gestionnaire d'enregistrement a été rencontré.
server_error Le nombre de demandes d'autorisation de l'application cliente dépasse la limite par heure.
slow_down L'application cliente interroge le serveur d'autorisation à une fréquence supérieure à la recommandation minimale.
unsupported_response_type Le type de réponse demandé n'est pas pris en charge.
 
Chargement
Salesforce Help | Article