Vous utilisez le flux OAuth nom d'utilisateur-mot de passe pour autoriser votre client et vous souhaitez migrer vers un flux plus sécurisé. Vous vous trouvez au bon endroit !
Remarque : le flux d'informations d'identification du client ne prend pas en charge les appels vers login.salesforce.com ou test.salesforce.com. Si vous utilisez l'un ou l'autre de ces domaines d'hôte, mettez à jour votre code afin d'utiliser le bon domaine de l'organisation correspondante pour chaque ensemble nom d'utilisateur-mot de passe dont dispose votre client. Au lieu de login.salesforce.com, utilisez l'URL de connexion Mon domaine de l'organisation, par exemple https://MonEntreprise.my.salesforce.com. Au lieu de test.salesforce.com, utilisez l'URL de connexion Mon domaine de la sandbox, par exemple https://NomDeMonDomaine--NomDeLaSandbox.sandbox.my.salesforce.com.
Remarque : si votre client utilise actuellement plusieurs noms d'utilisateur dans une seule organisation, vous ne pouvez pas migrer vers le flux d'informations d'identification du client. Nous vous recommandons plutôt de migrer vers le flux de porteur JWT OAuth pour les cas d'utilisation impliquant plusieurs noms d'utilisateur dans la même organisation. Si votre client accepte directement un nom d'utilisateur et un mot de passe choisis par l'utilisateur, nous vous recommandons de migrer vers des flux OAuth couplés tels que le flux Web-serveur ou de passer à des API d'authentification headless (pour les cas d'utilisation Experience Cloud uniquement).
Connectez-vous à l'organisation qui héberge votre application connectée. À partir de Configuration, dans la zone Recherche rapide, saisissez Application, puis sélectionnez Gestionnaire d'applications. Dans le menu déroulant à côté de votre application, sélectionnez Modifier. La page se présente comme suit :
Sélectionnez Activer le flux d'informations d'identification du client et acceptez le message d'alerte qui s'affiche :
Vous n'effectuez cette étape qu'une seule fois. Comme indiqué dans le message qui s'affiche lors de l'enregistrement, la modification peut prendre quelques minutes. Vous pouvez ensuite passer à la deuxième étape.
Complétez cette étape pour chaque organisation dans laquelle vous utilisez le flux OAuth nom d'utilisateur-mot de passe. Pour chaque ensemble nom d'utilisateur-mot de passe dont dispose votre client, vous devez modifier les stratégies de gestion dans l'organisation correspondante.
Connectez-vous à cette organisation en tant qu'administrateur. À partir de Configuration, dans la zone Recherche rapide, saisissez Application, puis sélectionnez Gestionnaire d'applications. Dans le menu déroulant à côté de votre application, sélectionnez Gérer, puis cliquez sur Modifier les stratégies. La page se présente comme suit :
Dans la section Flux d'informations d'identification du client, utilisez le champ de référence Exécuter en tant que pour rechercher l'utilisateur de l'organisation dont vous avez utilisé le nom d'utilisateur avec le flux OAuth nom d'utilisateur-mot de passe.
Par exemple, si votre client utilisait précédemment le flux OAuth nom d'utilisateur-mot de passe avec le nom d'utilisateur test@exemple1.com, identifiez l'utilisateur de l'organisation qui porte le nom d'utilisateur test@exemple1.com.
Sélectionnez l'utilisateur et cliquez sur Enregistrer.
Répétez ces étapes pour chaque organisation où le client dispose d'un ensemble nom d'utilisateur-mot de passe.
Pour mettre à jour l'appel du client dans le flux OAuth nom d'utilisateur-mot de passe actuel afin d'utiliser désormais le flux OAuth d'informations d'identification du client, mettez à jour le corps de la demande. Le cas échéant, modifiez également le domaine d'hôte.
Par exemple, si votre client effectue une demande POST semblable à celle-ci :
POST /services/oauth2/token HTTP/1.1Hôte : foo.my.salesforce.com grant_type=password&client_id=3MVG9lKcPoNINVBIPJjdw1J9LLM82HnFVVX19KY1uA5mu0QqEWhqKpoW3svG3XHrXDiCQjK1mdgAvhCscA9GE&client_secret=1955279925675241571&username=testuser@salesforce.com&password=mypassword
Remplacez-la par une demande POST telle que celle-ci :
POST /services/oauth2/token HTTP/1.1Hôte : foo.my.salesforce.com grant_type=client_credentials&client_id=3MVG9lKcPoNINVBIPJjdw1J9LLM82HnFVVX19KY1uA5mu0QqEWhqKpoW3svG3XHrXDiCQjK1mdgAvhCscA9GE&client_secret=1955279925675241571
Le format de réponse est comparable directement entre les flux.
Le flux d'informations d'identification du client ne prend pas en charge les appels vers login.salesforce.com ou test.salesforce.com. Si vous utilisez l'un ou l'autre de ces domaines d'hôte, mettez à jour votre code afin d'utiliser le bon domaine de l'organisation correspondante pour chaque ensemble nom d'utilisateur-mot de passe dont dispose votre client. Au lieu de login.salesforce.com, utilisez l'URL de connexion Mon domaine de l'organisation, par exemple https://MonEntreprise.my.salesforce.com. Au lieu de test.salesforce.com, utilisez l'URL de connexion Mon domaine de la sandbox, par exemple https://NomDeMonDomaine--NomDeLaSandbox.sandbox.my.salesforce.com.
Remarque : nous vous recommandons de transmettre toutes les données dans le corps du message POST. En particulier, ne transmettez pas le secret client dans la chaîne de requête de la demande POST. Les secrets doivent toujours être transmis dans le corps du message POST. La transmission d'informations confidentielles dans la chaîne de requête peut entraîner la fuite de ces informations auprès d'intermédiaires du réseau et d'autres services.
D'autres documents sur ces flux sont disponibles ici (pour le flux nom d'utilisateur-mot de passe) et ici (pour le flux d'identification du client).
Remarque : les jetons d'accès qui en résultent diffèrent légèrement d'un flux à l'autre. Le jeton renvoyé par le flux d'informations d'identification du client se conforme davantage aux normes OAuth.
000886201

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.