Loading
Identification de vos utilisateurs et gestion de l’accès
Table des matières
Sélectionner des filtres

          Aucun résultat
          Aucun résultat
          Voici quelques conseils de recherche

          Vérifiez l'orthographe de vos mots-clés.
          Utilisez des termes de recherche plus généraux.
          Sélectionnez moins de filtres pour élargir votre recherche.

          Recherchez dans toute l’aide de Salesforce
          Flux d'appareil OAuth 2.0 pour l'intégration IoT

          Flux d'appareil OAuth 2.0 pour l'intégration IoT

          Pour intégrer des applications exécutées sur des appareils dotés de capacités de saisie ou d'affichage limitées, par exemple des Smart TV, des appareils électroniques ou d'autres appareils Internet des objets, utilisez le flux d'appareil OAuth 2.0. Les applications de ligne de commande peuvent également utiliser ce flux. Les utilisateurs peuvent connecter ces applications à Salesforce en accédant à un navigateur sur un appareil doté de capacités plus avancées, par exemple un ordinateur portable ou un appareil mobile.

          Éditions requises

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

          Par exemple, un utilisateur contrôle l'éclairage de sa maison avec un appareil bluetooth pendant son absence. Vous pouvez créer une application cliente externe pour l'appareil bluetooth afin d'activer ce flux.

          1. L'utilisateur ouvre l'application bluetooth sur son appareil mobile et clique sur Allumer.
          2. L'application cliente externe publie une requête au point de terminaison de jeton Salesforce.
          3. Salesforce vérifie la requête et renvoie un code utilisateur lisible, une URL de vérification et un code d'appareil.
          4. L'appareil bluetooth affiche le code de l'appareil et demande à l'utilisateur de le saisir à l'URL de vérification spécifiée. L'application commence également à interroger le point de terminaison de jeton Salesforce pour l'autorisation.
          5. L'utilisateur clique sur le lien de l'URL de vérification et saisit le code.
          6. L'utilisateur autorise ensuite l'application à accéder à ses données protégées, l'emplacement de son domicile dans le cas présent.
          7. Salesforce envoie un jeton d'accès et d'actualisation à l'application cliente externe.
          8. L'appareil bluetooth peut accéder au domicile de l'utilisateur et allumer les lumières.

          Examinons les étapes de ce flux d'autorisation.

          1. Demande d'autorisation par l'appareil
          2. Salesforce renvoie des codes de vérification
          3. Authentification et autorisation de l'utilisateur pendant que l'appareil interroge le point de terminaison de jeton
          4. Salesforce accorde un jeton d'accès

          Demande d'autorisation par l'appareil

          Pour initier le flux d'autorisation, l'appareil publie, via une application cliente externe, une demande d'autorisation au point de terminaison de jeton Salesforce.

          Par exemple :

          POST /services/oauth2/token  HTTP/1.1
          Host: login.salesforce.com
          Content-Type: application/x-www-form-urlencoded
          
          response_type=device_code&
          client_id=3MVG9PhR6g6B7ps7TTI4cP7Mppg3l7tu.​MRAYULyVqcmA9hGLpHiiS.Q7rO9yjlmffiBUM6tFpYAlXEkRjHb9&scope=api

          Insérez les paramètres ci-dessous dans la demande.

          Important
          Important Lors du développement d'intégrations OAuth, transmettez toujours des informations confidentielles dans le corps d'une requête POST ou dans un en-tête de requête. N'utilisez pas les paramètres GET dans la chaîne de requête URL pour transmettre des informations confidentielles. Les informations confidentielles comprennent, sans s'y limiter, les noms d'utilisateur, les mots de passe, les jetons OAuth, les secrets clients et toute information d'identification personnelle. Pour plus d'informations sur les meilleures pratiques de sécurité, consultez Stockage des données confidentielles dans le Secure Coding Guide.
          Paramètre Description
          Request Header

          L'en-tête de la requête contient les informations suivantes :

          • Le point de terminaison de jeton OAuth 2.0 de Salesforce. Les applications clientes externes envoient des requêtes de jeton OAuth à ce point de terminaison.
          • Le serveur d'autorisation.
          • Type de contenu de la requête.
          response_type Le type d'octroi OAuth 2.0 demandé par l'application cliente externe. La valeur de ce flux doit être device_code.
          client_id La clé consommateur de l'application cliente externe. Pour accéder à la clé consommateur, dans le Gestionnaire d'application cliente externe, recherchez l'application cliente externe, puis sélectionnez Modifier les paramètres dans la liste déroulante. Agrandissez ensuite la section Paramètres OAuth, puis cliquez sur Clé et secret consommateur. Vous pouvez être invité à confirmer votre identité avant d'être autorisé à afficher la clé consommateur.
          scope Facultatif. Autorisations qui définissent le type de ressources protégées auxquelles une application cliente externe peut accéder. Vous attribuez des étendues à une application cliente externe lors de son élaboration, et elles sont incluses avec les jetons OAuth pendant le flux d'autorisation. Si vous n'incluez pas ce paramètre, toutes les étendues attribuées à l'application cliente externe sont demandées. Les étendues transmises dans ce paramètre doivent être un sous-ensemble des étendues enregistrées. Pour les paramètres valides, consultez Étendues OAuth.

          Salesforce renvoie des codes de vérification

          Après avoir vérifié la requête, Salesforce renvoie un code utilisateur lisible, une URL de vérification et un code d'appareil.

          Cet exemple de réponse renvoie ces valeurs avec un code de statut de réussite de 200.

          HTTP/1.1 200 OK
          Content-Type: application/json
          Cache-Control: no-store
          
          {
          "device_code":"M01WRzlQaFI2ZzZCN3BzN1RUSTRjUDdNcHBnM2w3dHUuTVJBWVVMeVZxY21BOWhHTHBIaWlTLlE3ck​85eWpsbWZmaUJVTTZ0RnBZQWxYRWtSakhiOTsxMC4yMi4zNC45MjsxNDc3Njc0NDg3NTA1O1gxRDlTRUVU",
          "user_code":"X1D9SEET",
          "verification_uri":"https://acme.my.salesforce.com/setup/connect",
          "interval":5
          }
          

          Les paramètres ci-dessous sont inclus dans la réponse.

          Paramètre Description
          Response Header

          L'en-tête de réponse contient les informations suivantes :

          • Code de statut de réussite 200
          • Type de contenu de la requête
          • Mention indiquant que les données ne sont pas stockées dans une mémoire cache
          device_code

          Un code de vérification pour l'appareil. Ce code est valide pendant 10 minutes. Le code peut inclure des lettres majuscules, des lettres minuscules et des chiffres.

          Salesforce peut modifier à tout moment la mise en forme des codes d'appareil. Lorsque vous développez des intégrations qui utilisent ce flux, ne faites pas d'hypothèses sur le format et la longueur du code de l'appareil.

          user_code Un code de vérification pour l'utilisateur final, envoyé sous forme de code alphanumérique à huit chiffres. L'utilisateur doit saisir ce code à l'URL de vérification. Ce code est valide pendant 10 minutes.
          verification_uri

          L'URL de vérification de l'utilisateur dans le serveur d'autorisation. L'utilisateur doit saisir ce code à l'URL de vérification.

          Avec la vérification via une URL de connexion Mon domaine ou une URL de site Experience Cloud, verification_uri reflète l'URL qui a initié le flux. Par exemple, si l'appareil envoie une demande de jeton à https://acme.my.salesforce.com/services/oauth2/token, la valeur verification_uri est https://acme.my.salesforce.com/setup/connect.

          Vous pouvez également ajouter le paramètre prompt à votre verification_uri.

          interval Le nombre minimal de secondes d'attente que nous recommandons entre les requêtes d'interrogation au point de terminaison de jeton.

          Authentification et autorisation de l'utilisateur pendant que l'appareil interroge le point de terminaison de jeton

          L'application cliente de l'appareil invite l'utilisateur à visiter l'URL de vérification sur un ordinateur ou un appareil mobile, puis à saisir le code utilisateur. L'utilisateur ouvre un navigateur, accède à l'URL de vérification, puis saisit le code affiché sur l'appareil. Si le code est valide, l'utilisateur se connecte normalement. Une fois la connexion réussie, l'utilisateur autorise l'appareil à accéder aux données de compte Salesforce.

          Pendant ce temps, après avoir affiché le code utilisateur et l'URL de vérification, l'application cliente de l'appareil interroge à répétition le point de terminaison de jeton. Il vérifie que l'utilisateur a autorisé l'accès et que le serveur d'autorisation à émis le jeton d'accès.

          Voici un exemple de requête d'interrogation :

          POST /services/oauth2/token  HTTP/1.1
          Host: login.salesforce.com
          Content-Type: application/x-www-form-urlencoded
          
          grant_type=device&
          client_id=3MVG9PhR6g6B7ps7TTI4cP7Mppg3l7tu.MRAYULyVqcmA9hGLpHiiS.​Q7rO9yjlmffiBUM6tFpYAlXEkRjHb9&code=M01WRzlQaFI2ZzZCN3BzN1RUSTRjUDdNcHBnM2w3dHUu​TVJBWVVMeVZxY21BOWhHTHBIaWlTLlE3ck85eWpsbWZmaUJVTTZ0RnBZQWxYRWtSakhiOTsxMC4yMi4zNC45MjsxNDc3N​jc0NDg3NTA1O1gxRDlTRUVU

          La requête d'interrogation contient les paramètres ci-dessous, en plus de l'en-tête.

          Paramètre Description
          grant_type La valeur doit être device pour ce flux.
          client_id La clé consommateur de l'application cliente externe. Pour accéder à la clé consommateur, dans le Gestionnaire d'application cliente externe, recherchez l'application cliente externe, puis sélectionnez Modifier les paramètres dans la liste déroulante. Agrandissez ensuite la section Paramètres OAuth, puis cliquez sur Clé et secret consommateur. Vous pouvez être invité à confirmer votre identité avant d'être autorisé à afficher la clé consommateur.
          code Le serveur d'autorisation crée un code d'autorisation, un jeton éphémère, et le transmet au client une fois l'authentification réussie. Le client envoie le code d'autorisation au serveur d'autorisation pour obtenir le jeton d'accès et éventuellement un jeton d'actualisation.

          Salesforce accorde un jeton d'accès

          Si l'utilisateur a autorisé, la réponse de Salesforce contient un message de succès et renvoie le jeton d'accès avec d'autres valeurs. Par exemple :

          {
          "access_token": "00DD00000008Uw2!ARkAQGppKf6n.VwG.EnFSvi731qWh.7vKfaJjL7h49yutIC84gAsxM​rqcE81GjpTjQbDLkytl2ZwosNbIJwUS0X8ahiILj3e"
          "refresh_token": "your token here"
          "signature": "hJuYICd2IHsjyTcFqTYiOr8THmgDmrcjgWaMp13X6dY="
          "scope": "api"
          "instance_url": "https://yourInstance.salesforce.com"
          "id": "https://login.salesforce.com/id/00DD00000008Uw2MAE/005D0000001cAGmIAM"
          "token_type": "Bearer"
          "issued_at": "1477674717112"
          }

          Les paramètres ci-dessous sont inclus dans l'exemple de réponse.

          Paramètre Description
          access_token Le jeton OAuth utilisé par une application cliente externe pour demander l'accès à une ressource protégée au nom de l'application cliente. Des autorisations supplémentaires sous forme d'étendues peuvent accompagner le jeton d'accès.
          refresh_token Le jeton obtenu du flux de jetons serveur Web, utilisateur-agent ou application hybride. Cette valeur est un secret. Prenez les mesures appropriées pour la protéger. Ce paramètre est renvoyé uniquement si votre application cliente externe est configurée avec une étendue refresh_token.
          signature La signature HMAC-SHA256 codée en Base64 signée par le client_secret. La signature peut inclure l'ID concaténé et issued_at value, que vous pouvez utiliser pour vérifier que l'URL d'identité n'a pas changé depuis que le serveur l'a envoyé.
          scope

          Les étendues associées au jeton d'accès.

          Les étendues définissent les types de ressource protégée auxquels le client peut accéder. Vous attribuez des étendues à une application cliente externe lors de son élaboration, et elles sont incluses avec les jetons OAuth pendant le flux d'autorisation.

          Pour les paramètres valides, consultez Étendues OAuth.

          instance_url Une URL indiquant l'instance de l'organisation de l'utilisateur. Par exemple : https://yourInstance.salesforce.com/.
          id Une URL d'identité qui peut être utilisée pour identifier l'utilisateur et pour demander plus d'informations sur l'utilisateur. Consultez URL d'identité.
          token_type Un type de jeton Bearer, utilisé pour toutes les réponses qui incluent un jeton d'accès.
          issued_at Horodatage indiquant à quel moment la signature a été créée, en millisecondes.
           
          Chargement
          Salesforce Help | Article