Montrez patte blanche avec OAuth2

L’utilisation des APIs de Business Central s’appuie sur un mécanisme d’authentification nommé OAuth2.

Voyons comment le mettre en œuvre.

Notez que l’expression « Montrez patte blanche » trouve son origine dans la fable de La Fontaine : Le Loup, la Chèvre et le Chevreau — Wikipédia (wikipedia.org)
Voilà pour la culture générale.

Qu’est-ce que OAuth2 ?

OAuth est un protocole libre qui permet d’autoriser un site web, un logiciel ou une application (dite « consommateur ») à utiliser l’API sécurisée d’un autre site web (dit « fournisseur ») pour le compte d’un utilisateur.
OAuth n’est pas un protocole d’authentification, mais de « délégation d’autorisation »
Source :  OAuth — Wikipédia (wikipedia.org).

C’est par exemple ce mécanisme qui vous permet (indirectement via OpenID) d’utiliser votre compte Microsoft, Google, Amazon, Facebook… pour vous authentifier sur bien d’autres applications, jouant ainsi le rôle de fournisseurs d’identités.

Si la plupart des utilisateurs de Business Central passent par l’authentification auprès de Microsoft (Azure Entra, successeur de Azure Active Directory), rien n’empêche de passer par un autre fournisseur d’identités tel que Google par exemple.

Ce principe est également mis en œuvre par le service d’identité numérique Franceconnect (voir Franceconnect – Accédez simplement aux services publics) qui vous permet par exemple de vous connecter au service impots.gouv.fr en étant authentifié avec votre N° de sécurité sociale ou inversement, aux services ameli.fr avec votre numéro fiscal.

Les spécifications de OAuth ont été publiées en 2010, mais son utilisation s’est généralisée à partir de 2013 avec sa version simplifiée (Oauth2), largement utilisée aujourd’hui pour les échanges entre applications via leurs APIs.

Comment mettre en œuvre OAuth2 ?

Si vous souhaitez utiliser les APIs offertes par Business Central depuis d’autres applications (un site de e-commerce par exemple), vous devrez inscrire ces applications et leur accorder des autorisations.

Vous pourrez vous référer aux ressources ci-après :

Quelques liens pour en savoir plus :

Pour une approche plus technique appliquée à Business Central, cette vidéo sera précieuse :
20231016 – Unlocking The Secrets Of Secure Endpoints: Connecting BC With Adv. Auth. Techniques

Les développeurs apprécieront cette vidéo proposée par Erik Hoogaard, qui détaille le code c# (transposable dans un autre langage) permettant d’utiliser les APIs de Business Central : Site-2-Site OAuth Authentication – From Scratch with C# and Business Central – YouTube

Cette autre vidéo (en français cette fois), illustre l’application de OAuth2 via Google mais sera aisément transposée pour un autre fournisseur d’identité :  Tutoriel vidéo PHP : Comprendre l’OAUTH 2.0, Connexion via Google | Grafikart

Vous pourrez alors utiliser un service tel que PostMan pour tester les requêtes ci-après en ayant défini les variables concernées (Cf. API, ma première requête).

https://api.businesscentral.dynamics.com/v2.0/{{tenantId}}/{{environmentName}}/api/v1.0/companies()

Voir aussi Finies les interfaces, vive les connecteurs – Wanamics.

Lien Permanent pour cet article : https://www.wanamics.fr/montrez-patte-blanche-avec-oauth2/

2 pings

  1. […] la version 2023 wave 1, seule l’authentification OAuth2 proposée pour la solution SaaS (voir Montrez patte blanche avec OAuth2). L’authentification de base, bien que moins sécurisée, reste possible en ‘On […]

  2. […] Voir aussi Montrez patte blanche avec OAuth2 – Wanamics […]

Laisser un commentaire