Présentation de OAuth (garantie sans jargon technique)

Nous avons déjà évoqué les cas où l’on nous demande de révéler un mot de passe et l’impératif de ne jamais y répondre. Lorsqu’un site Web souhaite utiliser les services...
Rob Sobers
3 minute de lecture
Dernière mise à jour 4 janvier 2022

Nous avons déjà évoqué les cas où l’on nous demande de révéler un mot de passe et l’impératif de ne jamais y répondre. Lorsqu’un site Web souhaite utiliser les services d’un autre – par exemple lorsque Bitly s’applique à publier sur votre fil Twitter –, la bonne façon de procéder n’est pas de vous demander de le saisir, mais d’utiliser OAuth.

OAuth est un protocole d’authentification qui vous permet d’approuver un dialogue entre deux applications pour votre compte sans pour autant révéler votre mot de passe.

Nous vous proposons le mémento ci-dessous pour illustrer, dans la plus grande simplicité, comment fonctionne OAuth.

Les acteurs

Dans toute transaction OAuth, on trouve 3 acteurs principaux : l’utilisateur, le consommateur et le fournisseur de service. Ce trio est parfois désigné du sobriquet plaisant de « Triangle amoureux OAuth » (“OAuth Love Triangle”).

Dans notre exemple, Joe désigne l’utilisateur, Bitly est le consommateur et Twitter est le fournisseur de service qui gère le contenu sécurisé de Joe (son flux Twitter). Joe souhaite que Bitly puisse poster des liens raccourcis dans son flux. Voici comment se déroule le processus :

Étape 1 – L’utilisateur manifeste son intention

Joe (Utilisateur) : « Hé, Bitly, j’aimerais que tu puisses poster des liens directement dans mon flux Twitter. »

Bitly (Consommateur) : « Très bien ! Attends que j’en demande la permission. »

Étape 2 – Le consommateur obtient la permission

Bitly : « J’ai un utilisateur qui aimerait que je puisse poster dans son flux. Est-ce que je pourrais avoir un jeton de demande ? »

Twitter (Fournisseur de service) : « Pas de problème. Voici un jeton et un secret. »

Le secret sert à éviter les demandes illicites. Le consommateur « signe » chacune de ses demandes à l’aide du secret, de sorte que le fournisseur de service puisse s’assurer que la demande émane bien de l’application consommatrice.

Étape 3 – L’utilisateur est redirigé vers le fournisseur de service

Bitly : « OK, Joe, je te transfère chez Twitter pour que tu puisses valider la demande. Pour cela, utilise ce jeton. »

Joe : « OK ! »

<Bitly transfère Joe sur Twitter pour autorisation>

Remarque : C’est là où le risque existe : si Bitly était en réalité un grand méchant pirate, il pourrait ouvrir une fenêtre ressemblant comme deux gouttes d’eau à la fenêtre de connexion de Twitter pour « pécher » (“phishing”) votre nom d’utilisateur et votre mot de passe. Veillez toujours à vérifier que l’URL de la fenêtre vers laquelle vous êtes dirigé est bien celui du fournisseur de service (Twitter dans notre exemple).

Étape 4 – L’utilisateur donne sa permission

Joe : « Twitter, je souhaite autoriser ce jeton de demande que Bitly m’a fourni. »

Twitter : « OK, juste pour confirmation : tu veux bien autoriser Bitly à faire X, Y et Z sur ton compte Twitter, c’est ça ? »

Joe : « Oui ! »

Twitter: « Très bien, alors tu peux retourner vers Bitly et lui dire qu’il a la permission de se servir de son jeton de demande. »

Twitter marque le jeton de demande de la mention « Valide », de sorte que lorsque le consommateur requerra l’accès correspondant, il lui sera accordé (dans la mesure où il l’aura signée à l’aide du secret partagé).

Étape 5 – Le consommateur obtient un jeton d’accès

Bitly : « Twitter, est-ce que tu peux m’échanger ce jeton de demande contre un jeton d’accès ? »

Twitter (Fournisseur de service) : « Pas de problème. Voici ton jeton d’accès avec le secret correspondant. »

Étape 6 – Le consommateur accède à la ressource protégée

Bitly : « Je voudrais poster ce lien dans le flux de Joe. Voici mon jeton d’accès à cet effet. »

Twitter : « Très bien : c’est fait ! »

Résumé

Dans notre exemple, Joe n’a pas eu à révéler ses identifiant et mot de passe Twitter à Bitly. Il a lui a simplement délégué un accès sécurisé grâce à OAuth. A tout moment, Joe peut se connecter à son compte Twitter, consulter la liste des accès externes qu’il autorisés et en révoquer éventuellement certains sans que cela affecte les autres. OAuth permet aussi de gérer différents niveaux d’accès. On peut par exemple conférer à Bitly le droit de publier sur son compte Twitter, mais ne donner à LinkedIn qu’un accès en lecture.

OAuth n’est pas parfait… en tout cas, pas encore !

OAuth est une solution éprouvée pour les applications sous navigateur Web et représente un vrai progrès par rapport à l’authentification HTTP classique. Mais elle comporte des limitations, notamment dans la version OAuth 1.0, qui la rendent nettement moins efficace et moins ergonomique dans le cas des applications natives et mobiles.

OAuth 2.0 est une version plus récente et mieux sécurisée du protocole qui introduit la notion de « flux » multiples pour les applis Web, mobile et de PC de bureau. Elle adopte aussi le concept d’expiration des jetons (similaire à celle des cookies), utilise SSL et atténue la complexité du point de vue des développeurs en n’exigeant plus de signature.

Autres ressources

J’espère que cela vous aura mieux familiarisé avec OAuth et que, la prochaine fois que vous verrez s’afficher une proposition du type « Connectez-vous avec votre compte Twitter », vous comprendrez mieux ce qui se déroule.

Si vous voulez en savoir encore plus sur le fonctionnement de OAuth, voici quelques liens utiles (en anglais) :

Que dois-je faire maintenant ?

Vous trouverez ci-dessous trois solutions pour poursuivre vos efforts visant à réduire les risques liés aux données dans votre entreprise:

1

Planifiez une démonstration avec nous pour voir Varonis en action. Nous personnaliserons la session en fonction des besoins de votre organisation en matière de sécurité des données et répondrons à vos questions.

2

Consultez un exemple de notre évaluation des risques liés aux données et découvrez les risques qui pourraient subsister dans votre environnement. Cette évaluation est gratuite et vous montre clairement comment procéder à une remédiation automatisée.

3

Suivez-nous sur LinkedIn, YouTube et X (Twitter) for pour obtenir des informations sur tous les aspects de la sécurité des données, y compris la DSPM, la détection des menaces, la sécurité de l’IA et plus encore.

Essayez Varonis gratuitement.

Obtenez un rapport détaillé sur les risques liés aux données basé sur les données de votre entreprise.
Se déploie en quelques minutes.

Keep reading

Varonis tackles hundreds of use cases, making it the ultimate platform to stop data breaches and ensure compliance.

améliorer-le-contrôle-d’accès-sans-provoquer-une-émeute
Améliorer le contrôle d’accès sans provoquer une émeute
Publié le 10 mai 2012 par Manuel Roldan-Vega Dans un précédent article, Résoudre le problème des partages ouverts, nous avons parlé des défis à relever lors de l’amélioration de l’accès...
comment-configurer-aws-iam-:-éléments,-fonctionnalités-et-composants
Comment configurer AWS IAM : éléments, fonctionnalités et composants
Amazon Web Services (AWS) Identity and Access Management (IAM) est un service Web qui vous aide à gérer de manière sécurisée les accès à AWS. Dans cet article, nous allons voir comment configurer IAM pour contrôler qui est authentifié (connecté) et autorisé (dispose des droits) à utiliser les ressources AWS.
utiliser-varonis-:-commencer-par-la-classification
Utiliser Varonis : Commencer Par la Classification
par Brian Vecci Nous avons passé beaucoup de temps à expliquer les nombreuses difficultés auxquelles sont confrontées les entreprises lorsqu’il s’agit de gérer les contrôles d’accès. J’ai cependant remarqué que...
krack-attack :-ce-que-vous-devez-savoir
Krack Attack : ce que vous devez savoir
Depuis dix ans, les philosophes s’accordent à dire que la hiérarchie des besoins de Maslow compte un autre niveau plus profond : l’accès Wi-Fi. Nous en sommes arrivés au point où...