Différence entre Authentification et Autorisation
by Alexandre Dedourges, DevSec
L’authentification et l’autorisation sont deux mots bien distincts, mais la frontière entre leur utilité peut sembler floue. En informatique, ces deux termes sont pourtant très souvent utilisés dès qu’on vient à parler d’accès sécurisé à une ressource, à une donnée ou tout autre objet nécessitant un accès contrôlé ou sécurisé. L’autorisation donne à l’utilisateur l’accès à une ressource tandis que l’authentification permet de vérifier qu’un utilisateur est bien la personne qu’il prétend être. Dans quelle mesure doit-on utiliser l’un ou l’autre ?
Authentifier ou autoriser ? Telle est la question.
Les autorisations
En informatique ce terme désigne le fait d’accorder ou non un accès à un fichier, une fonction ou toute partie d’un système informatique à un utilisateur. Bien souvent, celles-ci interviennent après une authentification.
Les authentifications
L’authentification a pour but de garantir l’identité d’une personne. Elle sert à valider que l’utilisateur est bien la personne qu’elle prétend être. Comme dit précédemment, cette étape intervient bien souvent avant celle des autorisations, c’est dans la plupart des cas la première étape garantissant une sécurité des données et des accès.
Les authentifications sont la plupart du temps réalisées à l’aide d’un couple identifiant/mot de passe propre à chaque utilisateur du système. Mais elles peuvent aussi être complétées par un deuxième facteur. C’est ce qu’on appelle une authentification à double facteur (Two-Factor Authentication en anglais ou 2 FA). Dans ce cas, l’utilisateur devra alors présenter au système d’authentification deux preuves de son identité. Par exemple son couple identifiant/mot de passe ainsi qu’un code à utilisation unique (One-time passcode ou one-time password abrégé OTP) qu’il recevra sur son mobile par exemple. Dans de plus rares cas, l’authentification à facteur multiple est aussi possible, elle est basée sur le même principe que la double authentification, mais avec encore plus de facteurs.
Selon Microsoft la mise en place d’une double authentification réduit les risques de 99,9 %. Ce sont donc des solutions efficaces et fiables pour sécuriser vos systèmes.
La différence entre l’autorisation et l’authentification
Les concepts d’authentification et d’autorisation s’entremêlent assez facilement. En effet, quand vous accédez à un site Web via votre identifiant et votre mot de passe, vous avez l’impression que vous êtes autorisé à accéder à ce qui se trouve derrière. En réalité votre authentification n’a fait que prouver votre identité. C’est l’autorisation qui vous permet d’accéder au reste. Mais ces deux processus sont liés, vous avez l’autorisation d’accéder à une ressource, car vous avez prouvé votre identité. L’authentification est un processus visible tandis que l’autorisation n’est pas visible. D’où les confusions.
Pour illustrer ce propos, prenons l’exemple d’un événement sportif, musical ou tout autre événement de grande ampleur. Pour pouvoir rentrer, vous devez présenter votre carte d’identité. Celle-ci va servir à prouver que vous êtes bien la personne que vous prétendez être. Les organisateurs pourront alors vérifier que vous êtes bien invité. Votre ticket quant à lui va servir à déterminer à quelle place vous devez vous placer (numéro de place, fosse, carré VIP…).
Dans cet exemple nous avons donc une authentification, par le biais de votre carte d’identité. Cette authentification vous permet d’accéder à l’événement. Puis une autorisation d’accès à certains services par le biais de votre ticket. Cette autorisation vous permet d’accéder à certains services si vos privilèges le permettent.
Le RBAC ou l’ABAC pour les autorisations
Le RBAC
L’utilisation du RBAC (Role-Based Access Control) est une solution de choix pour contrôler et fournir les autorisations à vos employés. Les accès par RBAC sont gérés à partir des rôles attribués aux utilisateurs. En 2004 une étude du NIST (National Institute of Standards and Technology) a montré que le modèle RBAC convenait à la majorité des besoins pour les entreprises et organisations. C’est pourquoi le RBAC a été transcrit dans le modèle NIST pour en faire une norme. Cette normalisation a été poursuivie par l’InterNational Committee for Information Technology Standards (INCITS) qui est une organisation de développement de normes accréditées par l’ANSI (American National Standards Institute). En découle la norme ANSI/INCITS 359 en 2004. Ce document a été re-publié sous le numéro INCITS 359-2012, qui a depuis été réaffirmé (INCITS 359-2012 (R2022)).
Ce modèle est donc approuvé et toujours grandement utilisé. Il permet de fournir des accès aux personnes en ayant le besoin et donc de le retirer à ceux qui n’en ont pas besoin. Il permet une gestion de manière rapide, efficace et plus sûre, car il suffit d’appliquer aux employés un rôle plutôt que les permissions une à une.
Exemple d’utilisation : Les employés possédant le rôle « Ressource Humaines » ont accès aux fiches de paie des employés, les employés ne possédant pas ce rôle n’y auront quant à eux pas accès.
L’ABAC (Attributes-Based Control Access)
Ce modèle prend en charge la logique booléenne, dans laquelle les règles contiennent des instructions « SI, ALORS » indiquant qui fait la demande, la ressource et l’action.
Exemple d’utilisations : SI le demandeur est un responsable, ALORS autorisez l’accès en lecture/écriture aux données sensibles.
ou
SI c’est la journée, ALORS autorisez la modification (dans le cas où personne n’est censé travailler la nuit)
Ce modèle est un complément parfait au RBAC, car il garantit une sécurité encore plus renforcée des accès.
Les différents protocoles et normes pour les autorisations et authentifications.
Il existe différentes normes et protocoles qui permettent de mettre en place des authentifications ou des autorisations. Les plus connus sont les suivants :
OAuth (Open Authorization)
OAuth est un protocole dit de « délégation d’autorisation ». Celui-ci permet donc d’être utilisé pour gérer des autorisations. Il est très pratique, car il permet par exemple à des utilisateurs de donner des autorisations sur les ressources qu’ils possèdent à des sites Web ou applications. Ces applications et sites Web pourront alors accéder aux ressources de l’utilisateur sans que celui-ci ait eu à leur fournir son mot de passe. De nombreux géants du Web utilisent ce mécanisme comme Google, Facebook, Twitter, Amazon…
OpenID Connect (OIDC)
OpenID Connect est une couche d’identification basée sur OAuth 2.0. Celui-ci est utilisé par de nombreux acteurs comme un moyen d’authentification pour les utilisateurs. En combinant l’OpenID Connect avec OAuth, il devient possible de réaliser une autorisation et une authentification en une seule et même requête.
SAML
Le SAML est quant à lui un standard utilisé pour les authentifications. Celui qui permet notamment de réaliser des authentifications uniques. Aussi appelé Single Sign-On (SSO) en anglais. L’authentification unique permet aux utilisateurs de s’authentifier sur plusieurs plateformes en ne s’identifiant qu’une seule fois. Ce qui offre une plus grande sécurité. Si vous voulez en savoir plus sur l’authentification unique (SSO), n’hésitez pas à consulter notre article à son sujet !
Bien réfléchir à son authentification et ses autorisations
Une bonne stratégie de sécurité nécessite de protéger ses ressources en combinant à la fois l’authentification et l’autorisation. Avec une stratégie d’authentification et d’autorisation bien réfléchie, les entreprises peuvent vérifier de manière efficace l’identité de chaque utilisateur présent sur leur système et ce à quoi ils ont accès. Cela empêchant les activités non autorisées voir malveillantes et cela réduit donc drastiquement les risques. En demandant aux utilisateurs de s’identifier et de garder une bonne hygiène numérique, l’authentification sera forte. De plus, en s’assurant que vos employés n’accèdent qu’aux ressources dont ils ont besoin, les entreprises peuvent maximiser leur productivité, tout en renforçant leur sécurité. Cela est d’autant plus important dans un contexte de numérisation de plus en plus conséquent où les risques cyber grandissent de jour en jour.
Les autorisations et authentifications représentent un enjeu capital pour les entreprises.
Comme nous l’avons vu dans cet article, bien comprendre les notions d’authentification et d’autorisation est très important pour votre politique de sécurité. Comprendre les différences qui font les spécificités de ces deux processus est d’autant plus important qu’il vous permettra de conserver vos données en sécurité. Avoir une sécurité renforcée n’est pas uniquement une bonne chose pour vous, mais elle l’est également pour votre entreprise et l’image qu’elle envoie dans le monde. Avoir une entreprise qui renvoie une image sûre et sécurisée pour les données de ses clients dans le monde est de plus en plus important dans un monde où les données personnelles sont devenues un enjeu de taille. À l’instar de l’or jaune et de l’or noir, l’or blanc qui représente les informations et données personnelles de chaque utilisateur est une ressource précieuse qu’il faut protéger. C’est pourquoi une bonne authentification et de bonnes règles d’autorisations sont devenues essentielles et même indispensables. Dans le cadre de votre développement, avoir un environnement sécurisé ne séduira pas uniquement vos utilisateurs, mais aussi les entreprises voulant travailler avec vous. Cela est particulièrement vrai dans le cadre de la mise en place d’un SSO (Single Sign-On). En effet, être compatible SSO pourrait s’avérer être un véritable atout dans le cadre de votre développement. De plus, celui-ci s’inscrit véritablement dans un cadre d’authentification simplifiée, mais aussi plus sécurisée.
Alors prêt à en apprendre plus sur les processus d’authentification et d’autorisations ? Intéressé par l’authentification unique ? On vous en dit plus chez Cryptr.
Add enterprise SSO for free
Cryptr simplifies user management for your business: quick setup, guaranteed security, and multiple free features. With robust authentication and easy, fast configuration, we meet businesses' security needs hassle-free.