Skip to content

Authentification

L'authentification est le processus par lequel votre application aquiert les droits d'accès aux API de Resamania. Il y a plusieurs méthodes pour obtenir ces autorisations, dépendantes des conditions particulières d'accès à celles-ci. Par exemple, une application mobile n'accèdera pas aux données de la même manière qu'une synchronisation de référentiels entre 2 serveurs.

Avant de commencer

Avant de pouvoir interagir avec les API et requêter des autorisations vous devez avoir enregistré votre application auprès de Resamania. Pour cela veuillez vous rapprocher de votre contact commercial.

Comprendre le processus d'authentification

Resamania implémente le standard OAuth 2.0. Celui-ci permet à un tiers (votre application) de demander à un serveur d'authentification (le serveur OAuth) l'autorisation d'accéder aux données d'un club (Resamania). Si votre application y est autorisée, le serveur OAuth vous fournit un access token. Il s'agit d'une chaîne de caractères qui implémente le standard JWT (JSON Web Token) et qui vous servira de clé d'accès. Dès lors vous présenterez cette clé d'accès aux API Resamania.

Un access token a un scope d'accès restreint selon plusieurs angles. Tout d'abord celui-ci permet d'accéder à une liste limitée de ressources préalablement établie lors de l'enregistrement de votre application. D'autre part le scope peut être restreint, dans certains cas d'utilisation, aux données liées directement à l'utilisateur connecté. Enfin un access token est restreint à une seule chaîne/club. Si votre application est enregistrée auprès de plusieurs chaînes, vous devrez requêter un access token par chaîne.

Un access token a une durée de vie limitée (aujourd'hui à 1h). Cette durée vous est fournie lors de la récupération d'un access_token et la date d'expiration exacte est transportée par le token lui même et accessible dans le payload du JWT sous l'entrée exp au format timestamp.

Comprendre les différentes méthodes d'authentification

Notre serveur d'authentification supporte plusieurs méthodes de requête d'authentification appelées grant type.

Lors de l'enregistrement de votre application nous établirons ensemble la meilleure méthode selon vos besoins particuliers. Voici cependant un résumé de ces méthodes.

Grant typeType de sécurisationCas d'utilisation
Authorization codeaccès nominatif avec authentification déléguée à l'utilisateur finalAccés longue durée tels que des applications mobiles, SSO (Single Sign On) pour s'authentifier de manière unique sur un parc d'applications
Passwordaccès nominatif avec authentification déléguée à l'utilisateur finalAccès courte durée sur des applications web, pas de SSO
Client credentialsaccès anonyme sans autorisation d'utilisateur finalAccès serveur à serveur, votre application sait protéger les clés liées à l'enregistrement de votre application
Club Client credentialsaccès anonyme scopé sur un club sans autorisation d'utilisateur finalAccès serveur à serveur, votre application sait protéger les clés liées à l'enregistrement de votre application
Contact Client credentialsaccès nominatif sans autorisation d'utilisateur finalAccès serveur à serveur, votre application sait protéger les clés liées à l'enregistrement de votre application
refresh tokenrenouvellement d'accèsObtention d'un nouvel access token après authentification par une méthode précédente

Obtenir un access token

En résumé nous avons vu que :

  • pour accéder au API vous avez besoin d'un access token
  • pour avoir un access token vous devez utiliser une méthode d'authentification

Pour obtenir un access token, reportez vous aux sections correspondantes aux méthode d'accès qui vous ont été octroyées

Pour aller plus loin