Rechercher dans le blog

Créer une clé d'API pour accéder aux services de localisation d'ArcGIS

Les services de localisation d'ArcGIS vous permettent d'enrichir vos applications avec des capacités géospatiales : du géocodage, du calcul d'itinéraire, du géo-enrichissement, des services de fond de carte, des points d'intérêt... Afin de s'authentifier pour utiliser ces services, 3 méthodes d'authentification sont disponibles : par API key (clé d'API), via un utilisateur nommé ou via une authentification applicative. 
Pour choisir le type d'authentification à utiliser, plusieurs questions sont à prendre en compte : l'application est-elle destinée à un usage public ou privé ? De quel niveau de sécurité ai-je besoin ? A quel type de contenu sécurisé ai-je besoin d'accéder ? 
Les clés d'API sont le moyen d'authentification le plus simple à mettre en place, et sont idéales si vous souhaitez créer une application publique n'accédant que à des services de localisation et à des items hébergés sur votre portail. Notez que les clés d'API sont accessibles pour les utilisateurs ArcGIS Online et pour les développeurs possédant un compte sur location.arcgis.com.
Dans cet article, je vous propose de voir ensemble les étapes de création et de gestion d'une clé d'API. 

1 - Connexion à votre portail

Rendez-vous sur arcgis.com et connectez-vos avec les identifiants de votre compte ArcGIS Online ou de votre compte développeur.

2 - Création d'un nouvel item

Une fois connecté, cliquez sur "Nouvel élément" dans votre contenu.
Choisissez un élément de type "Informations d'identification Developer".
Notez que si vous utilisez un compte ArcGIS Online,  vous aurez besoin au choix d'un compte possédant des privilèges administrateur dans votre organisation, ou d'un rôle personnalisé avec le privilège "générer des clés d'API" afin de pouvoir générer une clé d'API.
Sélectionnez "Informations d'identification de clé d'API".

3 - Choisir la date d'expiration et les référents

Les informations d'identification des clés API génèrent des jetons (token) d'accès à longue durée de vie appelés clés d'API. Ces clés d'API sont valides jusqu'à un an et leur date d'expiration est définie lors de leur création. A l'expiration de votre clé d'API, il faudra en générer une nouvelle et la renseigner à nouveau dans votre application.
Vous pouvez également définir des référents sur votre clé d'API, ce qui limite l'utilisation de la clé aux domaines autorisés. C'est une bonne pratique à mettre en œuvre afin de garantir la sécurité de votre clé. Un référent est un champ d'en-tête HTTP utilisé pour identifier le client qui demande une ressource du serveur. Il s'agit d'une mesure de sécurité qui permet aux applications de confirmer l'identité de leur client. Lorsque les identifiants des développeurs comportent un ou des référents HTTP spécifiques, les services peuvent confirmer que le référant d'une requête entrante correspond à l'un des référents valides attribués à ce jeton d'accès. Cela permet donc d'éviter que quelqu'un qui aurait mis la main sur votre clé d'API puisse s'en servir pour son propre site web.
Vous pouvez indiquer des domaines spécifiques ou utiliser des caractères génériques (*) dans le sous-domaine de votre référent autorisé. Par exemple, https://*.votre-app.com permettra d'utiliser le jeton d'accès sur https://dev.votre-app.com et https://votre-app.com. Bien qu'il soit également possible de limiter l'utilisation du jeton d'accès à des chemins d'accès spécifiques (https://votre-app.com/page), cette méthode n'est pas recommandée car les navigateurs peuvent supprimer le chemin d'accès pour des raisons de confidentialité.

4 - Sélection des privilèges

Vous pouvez maintenant configurer les privilèges de votre clé d'API, c'est-à-dire quels services votre clé sera capable de requête. Afin que votre jeton d'accès fonctionne dans votre application, il faut vous assurer d'avoir défini les bons privilèges afin que votre clé puisse consommer les services que votre application utilise. Sélectionnez les privilèges dont vous avez besoin dans votre application :
Notez que la liste des privilèges que vous pouvez activer varie en fonction des paramètres suivants :
  • Le type de compte utilisé (ArcGIS Online ou compte développeur). Certains services sont spécifiques à ArcGIS Online, et d'autres aux comptes développeurs.
  • Si vous possédez un compte développeur et n'avez pas indiqué de moyen de payement valide pour activer le pay-as-you-go, seuls les services possédant un free-tiers (un certain nombre de transactions gratuites) seront disponibles.
  • Si vous possédez un compte ArcGIS Online, il se peut que vous n'ayez pas le type d'utilisateur ou le rôle requis.

5 - Sélection des items

Il se peut également que votre application ait besoin d'accéder à certains items hébergés sur votre portail, comme par exemple des couches, des cartes, ou d'autres types de données. Vous pouvez si nécessaire parcourir les données de votre portail et sélectionner celles auxquelles votre clé d'API pourra accéder. Vous pouvez sélectionner jusqu'à 100 items. Si vous ne souhaitez pas accorder l'accès à vos items, vous pouvez simplement ignorer cette étape.

6 - Sauvegarde de l'item

Vous pouvez maintenant sauvegarder vos informations d'identification contenant la clé d'API, en renseignant un titre, un dossier dans lequel l'enregistrer, des balises afin de la retrouver plus facilement lorsque vous recherchez des éléments sur votre portail, ainsi qu'une description si vous le souhaitez.  
Vous pouvez ensuite passer en revue les différents paramètres sélectionnés lors de la création de votre clé d'API avant de cliquer sur "Suivant".

7 - Copie de la clé d'API

Attention, lors de la génération de la clé d'API, vous ne pouvez avoir accès qu'une seule fois à la chaîne de caractères complète constituant la clé. Avant de la générer, assurez-vous d'être prêt à la copier. Si vous perdez la clé d'API après l'avoir créée, vous pouvez si nécessaire la re-générer, mais la clé initiale sera alors désactivée.
Si vous êtes prêts à copier la clé, générez-la.
Copiez ensuite votre clé d'API. Vous pouvez maintenant l'insérer dans votre application. Celle-ci devrait maintenant être en capacité de consommer les services d'ArcGIS, comme par exemple ci-dessous avec les services d'itinéraire et de géocodage :
Si vous n'êtes pas prêts à copier la clé, vous pouvez vous contenter d'accéder à la page des détails de l'élément. Vous pourrez générer la clé plus tard en accédants aux paramètres de l'item ainsi créé.

8 - Gérer sa clé d'API

Maintenant que votre clé d'API a été générée, vous pouvez la gérer de différentes manières en vous rendant dans les paramètres de la page de l'item. 
C'est là par exemple que vous pourrez supprimer votre clé d'API, à la fin de sa date de validité par exemple ; ou encore re-générer la clé d'API si vous ne l'avez pas bien copiée au moment de sa génération.
Vous pouvez par exemple aussi modifier plusieurs paramètres définis durant la création de la clé : les référents (URLs autorisés), les privilèges (services que la clé peut consommer), et vous pouvez également ajouter de nouveaux paramètres comme des URL de redirection. 
Vous pouvez également générer une seconde clé d'API à partir des mêmes informations d'authentification. La première clé restera active, et la seconde possèdera exactement les mêmes paramètres. Cela peut être utile par exemple si vous souhaitez mettre en place des rotations de clé d'API dans vos applications.

9 - Suivre la consommation de sa clé d'API

Lors de son utilisation dans votre application, la clé d'API va consommer les différents services auxquels l'application accède. 
  • Si vous possédez un compte ArcGIS Online, c'est toujours sur cette page que vous pouvez suivre la consommation de votre clé. Celle-ci utilise les crédits de votre organisation pour fonctionner, vous pouvez consulter la documentation pour savoir le connaître le coût des transactions de service. 
  • Si vous possédez un compte développeur, il faudra vous rendre sur location.arcgis.com et vous connecter au site en cliquant sur "Sign in" en haut à droite. En vous rendant ensuite dans l'onglet "Developer credentials", vous accéderez à la liste de vos clés d'API. Vous pouvez suivre sa consommation en cliquant sur "View usage". Avec votre compte développeur, vous avez accès à un certain nombre de transactions de services en "free-tiers", c'est-à-dire que vous pouvez effectuer un nombre de transactions défini de chaque service avant d'être facturé pour le service en question. La facturation se fait ensuite en dollars, directement en fonction de votre consommation mensuelle.Vous pouvez retrouver le prix des transactions de service dans l'onglet Pricing du site.

Aucun commentaire:

Enregistrer un commentaire