Connecter Salesforce à Auth0
1
Configuration de Salesforce
- Inscrivez-vous pour obtenir un compte Salesforce Developer ou utilisez votre org Salesforce existante.
- Dans votre org Salesforce, accédez à Setup → Platform Tools → Apps → App Manager.
- Sélectionnez New External Client App.
-
Remplissez les renseignements de base :
- Connected App Name : saisissez un nom descriptif pour votre intégration
- API Name : ce nom sera généré automatiquement à partir du nom de l’application
- Contact Email : votre adresse courriel
-
Dans la section API (Enable OAuth Settings) :
- Sélectionnez Enable OAuth Settings
- Callback URL :
https://YOUR_AUTH0_DOMAIN/login/callback
You can find the Auth0 domain in the Auth0 Dashboard.You can find this under Applications > [Your Application] > Settings > Basic Information > Domain.If you are using the custom domains feature, your Auth0 domain is the custom domain. You can find this under Branding > Custom Domains.- Selected OAuth Scopes : ajoutez les permissions suivantes :
api- Accéder à vos données et les gérer (api)refresh_token- Effectuer des requêtes en votre nom en tout temps (refresh_token, offline_access)openid- Accéder au service d’URL de votre identité
-
Configuration importante des jetons (pour une compatibilité optimale avec Token Vault) :
- Require Secret for Web Server Flow : sélectionnez cette option pour renforcer la sécurité
- Require Secret for Refresh Token Flow : sélectionnez cette option pour sécuriser les opérations d’actualisation des jetons
- Enable Refresh Token Rotation : sélectionnez cette option pour activer la rotation à chaque actualisation
- Issue JSON Web Token (JWT)-based access tokens for named users : sélectionnez cette option pour prolonger la validité des jetons et améliorer les performances
- Sélectionnez Create et attendez que l’application soit créée.
- Une fois l’application créée, notez votre Consumer Key (identifiant du client) et votre Consumer Secret (secret client).
Remarques sur la configuration des jetons :
- Si vous sélectionnez des jetons opaques plutôt que JWT, Token Vault fixera par défaut le délai d’expiration à 10 minutes, ce qui pourrait entraîner des actualisations fréquentes des jetons.
- Assurez-vous que la permission
refresh_tokenest activée dans les paramètres de votre Connected App, et pas seulement demandée dans Auth0. Si cette permission n’est pas activée du côté de Salesforce, Auth0 ne peut pas demander de jetons de renouvellement. - Envisagez d’activer la rotation des jetons de renouvellement afin de renforcer la sécurité.
2
Configuration d’Auth0
Permissions requises : assurez-vous d’inclure les permissions suivantes dans la configuration de votre connexion Auth0 :
openid- Accéder au service d’URL de votre identitéapi- Accéder à vos données et les gérerrefresh_token- Effectuer des requêtes en votre nom en tout tempsoffline_access- Conserver l’accès en votre absence
Ce guide vous explique comment configurer la connexion Salesforce dans Auth0. Pour un exemple complet montrant comment configurer votre application afin d’appeler des API tierces au nom de l’utilisateur à l’aide d’une telle connexion, consultez le guide de démarrage rapide Appeler des API tierces au nom de l’utilisateur.
Exemple de configuration du Token Vault
Pour configurer le Token Vault de votre connexion Salesforce, vous pouvez utiliser l’extrait de code suivant dans votre application :Dépannage
Erreurs de grant invalide
Si vous obtenez des erreursinvalid_grant avec des jetons d’accès ou de renouvellement expirés :
- Vérifiez la configuration des jetons : assurez-vous que votre Connected App utilise des jetons JWT plutôt que des jetons opaques.
- Vérifiez la politique des jetons de renouvellement : dans votre Connected App, réglez la politique des jetons de renouvellement sur « valide jusqu’à révocation » (valid until revoked).
- Configuration des permissions : confirmez que les permissions
refresh_tokenetoffline_accesssont activées à la fois dans votre Connected App Salesforce et dans votre connexion Auth0. - Rotation des jetons : si vous utilisez la rotation des jetons de renouvellement, assurez-vous que votre application prend en charge le nouveau jeton de renouvellement renvoyé à chaque requête d’actualisation.
Problèmes courants
- Erreurs de permission : assurez-vous que toutes les permissions requises sont activées dans les paramètres de votre Connected App Salesforce, et pas seulement demandées dans Auth0.
- Expiration des jetons : les jetons JWT ont une durée de validité plus longue que les jetons opaques. Si vous utilisez des jetons opaques, attendez-vous à devoir actualiser vos jetons fréquemment.
- Autorisations multiples : évitez d’autoriser le même utilisateur plusieurs fois de suite en peu de temps, car cela peut entraîner l’invalidation des jetons.
Next steps
- To learn how to configure applications to access Token Vault, read Configure Token Vault.
- If your application uses Organizations, authenticate the user with the target organization before initiating the Connected Accounts flow. Connected accounts remain linked to the individual user profile.
- To learn how to get an access token to make a tool call, complete the Call third-party APIs on user’s behalf Quickstart.