Identifiants OAuth 2.0
Pour exécuter un mappage qui requiert une autorisation OAuth 2.0 dans MapForce, vous devrez créer un identifiant OAuth 2.0 utilisant la Gestion d'identifiants, remplir les détails OAuth 2.0, et procéder à un processus d’autorisation manuelle tel que décrit ci-dessous. Le dialogue Ajouter/Éditer Identifiant affiché ci-dessous apparaît quand vous créez un identifiant OAuth 2.0 ou quand vous éditez un identifiant OAuth 2.0 existant. Pour plus d’information sur chaque propriété, voir la sous-section Paramètres disponibles ci-dessous.
À propos du flux de travail OAuth 2.0
OAuth est synonyme de Open Authorization et est un cadre d’autorisation standard ouvert qui permet aux applications d’accéder à un ensemble de ressources utilisateur au nom d’un utilisateur. Les procédures générales associées au flux de travail OAuth 2.0 sont décrites ci-dessous :
1.Une application tierce (Client) s’inscrit avec un serveur d’autorisation. Le serveur d’autorisation publie une ID Client et, le cas échéant, un secret client.
2.Le Client indique une redirection URI vers laquelle un utilisateur sera redirigé après avoir accordé ou refusé la permission au Client.
3.L’utilisateur initie une action dans l’application client, qui requiert l’accès aux ressources de l’utilisateur. Par exemple, l’utilisateur peut vouloir se connecter dans l’application client en utilisant son compte Facebook.
4.Le Client envoie une requête au serveur d’autorisation et redirige l’utilisateur vers le point terminal du serveur d’autorisation, là où l’utilisateur se connecte et accorde ou refuse la permission au Client. La requête Client au serveur d’autorisation contient l’ID Client, les privilèges requis et l’URI redirigée.
5.Si l’utilisateur a accordé la permission au Client, le Client obtient un accord d’autorisation et échange les identifiants utilisateur ou détails d’autorisation (ceci dépend du type Grant) pour un jeton d’accès et, si applicable, un jeton d’actualisation.
6.Le Client utilise ensuite un jeton d’accès pour accéder aux ressources de l’utilisateur sur le serveur de ressource.
7.Si le jeton d’accès a expiré, le Client peut utiliser le jeton d’accès afin de continuer à utiliser les ressources de l’utilisateur sans re-authentification de l’utilisateur. Si le Client utilise le jeton d’actualisation ou non dépend du type grant que vous avez sélectionné. Voir la propriété Jeton d’accès ci-dessous pour plus de détails.
Paramètres disponibles
Les champs associés avec un objet d'identifiant OAuth 2.0 sont recensés ci-dessous. Pour obtenir ces valeurs, vous devez tout d'abord vous enregistrer auprès du fournisseur de service Web (par exemple, Google API Console, Facebook API, Bitbucket API, etc.).
Les types d’autorisation OAuth déterminent comment l’application client (Dans ce cas, MapForce communique avec le service OAuth et obtient un jeton d’accès. Les types d’autorisation (grant) suivants sont pris en charge :
•Identifiants du Mot de passe du propriétaire de la Ressource
Dépendant du type Grant sélectionné, différentes propriétés deviennent disponibles. Pour plus d’information sur chaque propriété, voir les options ci-dessous.
|
Un point de terminaison d’autorisation est une URI vers laquelle un propriétaire de ressource (par ex., un utilisateur) est redirigé pour initier l’authentification, l’accord et l’autorisation. Le point de terminaison d’autorisation est fourni par un serveur d’autorisation. Lorsque MapForce veut avoir accès aux ressources utilisateur, MapForce redirige le navigateur de l’utilisateur au point de terminaison de l’authentification. Après l’authentification, l’utilisateur décide s’il accorde ou refuse la permission à MapForce. Une fois que la décision d’autorisation a été prise, le serveur d’autorisation redirige l’utilisateur vers le chemin spécifié dans le paramètre Rediriger URI.
Vous pouvez obtenir le point de terminaison après vous être enregistré auprès du fournisseur de service Web.
|
Un point de terminaison du jeton est un emplacement où l’application client (dans ce cas, MapForce) soumet une demande pour obtenir un jeton d’accès en échange de certains identifiants ou de détails d’autorisation. Vous pouvez contenir cette valeur après vous être enregistré auprès du fournisseur de service Web.
|
Une ID Client est un identifiant public unique de l’application client (MapForce dans ce cas). L’ID Client est émise par un serveur d’autorisation. Le serveur d’autorisation utilise l’ID Client et secret (décrits ci-dessous) pour vérifier l’identité du client. Vous pouvez obtenir cette valeur après vous être enregistré auprès du fournisseur de service Web.
|
Un secret client est un morceau d’information confidentiel qu’une application client (dans ce cas, MapForce) utilise pour l’authentification. Le secret client est émis par un serveur d’autorisation. Le serveur d’autorisation utilise l’ID Client et secret pour vérifier l’identité du client. Le secret client aide à empêcher des applications non autorisées d’imiter des clients et d’accéder aux ressources des utilisateurs. Vous pouvez obtenir le secret client une fois que vous vous êtes inscrits auprès du fournisseur de service Web.
|
La portée de l’accès définit l’accès des ressources de l’utilisateur qu’un client requiert (dans ce cas, MapForce) (par ex., lire et écrire les privilèges). Vous pouvez obtenir cette valeur après vous être enregistré auprès du fournisseur de service Web.
|
Un jeton d'accès est un morceau de données que le client (par ex., MapForce) obtient d’un serveur d’autorisation une fois que le processus d’autorisation a été achevé avec succès. Le jeton d’accès permet à MapForce d’accéder aux ressources utilisateur. Le mappage sera exécuté avec succès uniquement si le serveur ressource détermine que le jeton d’accès est correct et valide. L’accès jeton expire après une période définie par le fournisseur de service Web. Pour que le jeton soit actualisé, certaines conditions doivent être satisfaites (voir les détails sous « Comment actualiser les jetons » ci-dessous).
|
Les jetons d’accès (voir ci-dessus) sont de courte durée pour des raisons de sécurité. Le temps d’expiration d’un jeton d’accès est déterminé par un serveur d’autorisation. Si le serveur d’autorisation prend en charge les jetons d’actualisation, il émettra un jeton d’actualisation avec un jeton d’accès au cours du processus d’autorisation. Pour les détails sur la manière d’actualiser les jetons, voir la sous-section appelée Comment actualiser les jetons ci-dessous.
|
Les champs Nom utilisateur et Mot de passe deviennent disponibles quand vous sélectionnez le type grant Identifiants du Mot de passe du propriétaire de la Ressource. Dans ce type grant type, l’application client échange directement les identifiants de l’utilisateur (nom utilisateur et mot de passe) pour un jeton d’accès et, en option, pour un jeton d’actualisation. Dès que le client obtient les identifiants de l’utilisateur, le client envoie une requête POST au serveur d’autorisation. Si la requête a réussi, le serveur d’autorisation publiera un jeton d’accès que le client peut utiliser pour accéder aux ressources de l’utilisateur.
|
La section Autorisation fournit l’information sur une URI redirigée et vous permet de préciser comment soumettre les détails d’ Authentification.
Rediriger URIUne URI redirigée est l’emplacement auquel un serveur d’autorisation redirige a utilisateur une fois que celui-ci a autorisé ou refusé la permission au client (par ex., MapForce). Il s’agit également de l’emplacement auquel le serveur d’autorisation envoie le code d’autorisation requis pour avoir un jeton d’accès. Par défaut, MapForce définit automatiquement une URI pour la communication avec le serveur d’autorisation. Si le serveur d’autorisation requiert un port spécifique, sélectionnez la case à cocher Port spécifique et saisissez le port pertinent.
Assurez-vous de copiez la redirection URI et de l’ajouter à la liste des URI de redirection autorisés sur la plateforme où vous inscrivez votre application client.
Authentification Point d'extrémité de jetonL’authentification du point de terminaison de jeton (aussi connue comme authentification client) fait référence au processus de vérification de l’identité d’une application client (par ex., MapForce) par un serveur d’autorisation. Le serveur d’autorisation décide ensuite d’autoriser ou de refuser la permission client pour avoir un jeton d’accès depuis le point de terminaison de jeton. L’authentification Client assure que le serveur d’autorisation publie un jeton d’accès uniquement à un client légitime.
La plupart des serveurs d'autorisation OAuth 2.0 exigent que les détails d'autorisation soient soumis dans l'en-tête de requête POST. Certains serveurs d'autorisation OAuth 2.0 acceptent les détails d'autorisation uniquement dans le corps de la requête POST. Dépendant des exigences du serveur d’autorisation, sélectionnez l’option pertinente depuis la liste déroulante.
|
Une fois avoir rempli les champs ci-dessus, cliquez sur Requête jeton d'accès pour obtenir le jeton d'accès nécessaire pour exécuter le mappage. Le processus exact d’autorisation dépend du fournisseur de service Web et du type grant. Par exemple, if si vous avez sélectionné le code d’autorisation grant type, le processus d’autorisation exigera typiquement que vous confirmiez manuellement dans la fenêtre du navigateur que vous accordiez l’accès au service Web afin d’établir votre identité (par ex., votre compte Google si le mappage appelle une API Google). À l'issue du processus, MapForce affiche un message de confirmation : le jeton d'accès a été obtenu depuis le serveur.
Veuillez noter que le jeton d'accès sera uniquement enregistré si vous avez coché la case Enregistrer chiffré dans un fichier MFD, comme décrit dans Identifiants. Si vous n'avez pas coché la case Enregistré chiffré dans un fichier MFD, vous devrez autoriser manuellement à chaque fois que vous exécutez le mappage.
Comment actualiser les jetons
Le jeton d’accès peut expirer après quelque temps. La période après laquelle le jeton expire dépend du fournisseur de service Web. Le jeton d’accès peut être révoqué explicitement par le fournisseur du service Web. Lorsque cela se produit, la fenêtre Messages affichera des erreurs d'autorisation lorsque vous tentez de consulter le mappage.
Notez que MapForce n’actualise pas les jetons OAuth 2.0. Si le jeton d’accès a expiré, vous pouvez demander un nouveau jeton d’accès, irrespectivement du type grant, en utilisant le bouton Request Access Token et refaire le processus d’autorisation avant d’exécuter le mappage. Si vous exécutez votre mappage sous la gestion FlowForce Server, FlowForce Server tentera d’actualiser le jeton sous certaines circonstances qui dépendent du type grant que vous avez sélectionné (voir les sous-sections ci-dessous).
Code d’autorisation type grant
Si vous exécutez le mappage sous la gestion FlowForce Server, et que vous avez défini le Code d’autorisation type grant, FlowForce Server tentera d’actualiser le jeton uniquement sous les conditions suivantes :
•Un mappage qui utilise un identifiant OAuth 2.0 doit être déployé dans FlowForce Server.
•L’identifiant OAuth 2.0 lié au mappage doit être déployé dans FlowForce Server, ou peut créer cet objet d’identifiant OAuth 2.0 directement dans FlowForce Server.
•Une tâche FlowForce qui exécute le mappage doit faire référence à l’identifiant OAuth 2.0 pertinent que vous avez déployé ou créé précédemment dans FlowForce Server (capture d’écran ci-dessous). De cette manière, l’objet d’identifiant OAuth 2.0 sera lié à l’étape de mappage.
•L’objet d’identitfiant OAuth 2.0 doit avoir une valeur valide non vide Actualiser jeton dans FlowForce Server.
Types grant d’identifiants Client et identifiants mot de passe ressource
Si vous avez sélectionné le type grant des Identifiants Client ou des Identifiants de mot de passe de la ressource, FlowForce Server tentera d’obtenir un dernier jeton sous les conditions suivantes :
•Tous les détails d’autorisation pertinents du type grant sélectionné doivent être fournis (par ex., ID Client, Secret Client, etc.).
•Un mappage qui utilise un identifiant OAuth 2.0 doit être déployé dans FlowForce Server.
•L’identifiant OAuth 2.0 lié au mappage doit être déployé dans FlowForce Server, ou peut créer cet objet d’identifiant OAuth 2.0 directement dans FlowForce Server.
•Une tâche FlowForce qui exécute le mappage doit faire référence à l’identifiant OAuth 2.0 pertinent que vous avez déployé ou créé précédemment dans FlowForce Server (capture d’écran ci-dessous). De cette manière, l’objet d’identifiant OAuth 2.0 sera lié à l’étape de mappage.
Si le jeton a expiré, FlowForce Server tentera d’obtenir un nouveau, en envoyant une requête au point de terminaison du jeton.