Qu'est-ce que l'authentification unique (SSO) ?
L'authentification unique (SSO) est un excellent moyen de résoudre le problème de devoir se connecter encore et encore à chaque fois que vous accédez à un nouveau service . Le plus simple est de l'expliquer avec un exemple :
Disons que vous, comme beaucoup de personnes, comptez sur une gamme de services Google. Vous recherchez des éléments dans le moteur de recherche de Google, utilisez Gmail pour vérifier vos messages, écrivez dans Google Docs, utilisez Maps lorsque vous avez besoin de vous repérer et cliquez sur YouTube lorsque vous avez envie de passer le temps.
Lorsque vous passez d'un de ces services Google à un autre, vous connectez-vous à chaque fois que vous changez ?
Non. La plupart des gens auront leur compte Google configuré de manière à ne devoir se connecter qu'occasionnellement, par exemple lorsqu'ils tentent d'accéder à leur compte à partir d'un nouvel appareil ou lorsque Google détecte une activité suspecte. Avec cette connexion rare à un seul compte, vous pouvez basculer entre YouTube, Gmail et tous les autres services sur lesquels vous comptez, sans avoir à vous connecter à chaque fois vous changez de service.
Comment tout cela se passe-t-il ? Grâce à une authentification unique.
La plupart d’entre nous apprécient vraiment la commodité que nous offre l’authentification unique, car nous avons tendance à utiliser un grand nombre de services différents et à basculer fréquemment entre eux. Devoir se connecter à chaque fois serait un obstacle et cela nous ralentirait vraiment tant dans notre travail que dans notre vie personnelle.
L'authentification unique peut être réalisée à l'aide de diverses techniques, mais à la base, il nous permet d'accéder à plusieurs services différents, tous avec une seule connexion . Cela réduit les frictions pour l’utilisateur, ce qui améliore l’expérience utilisateur. L’authentification unique peut même présenter certains avantages en matière de sécurité et s’avérer utile dans d’autres domaines. Cependant, l’authentification unique présente également quelques inconvénients, qu’il convient de prendre en compte avant de la mettre en œuvre.
Noter que l'authentification unique est souvent utilisée pour désigner l'accès aux services au sein de la même entreprise . Si nous parlons d'utiliser un ensemble d'informations de connexion pour accéder aux services de plusieurs organisations différentes, cela s'appelle gestion des identités fédérées (FIM) . Cependant, le terme authentification unique est parfois également utilisé pour la gestion des identités fédérées. Nous aborderons la gestion des identités fédérées plus en profondeur plus tard dans le Gestion des identités fédérées section.
À quoi sert réellement la signature ?
Avant de pouvoir véritablement comprendre l’authentification unique, nous devons prendre du recul et comprendre l’authentification dans un sens plus général, ainsi que les processus impliqués dans le contrôle d’accès.
Alors pourquoi devons-nous nous connecter à nos comptes en premier lieu ? Il serait peut-être encore plus pertinent de se poser la question suivante : pourquoi avons-nous des comptes ?
La réponse simple est que les comptes contrôlent l’accès aux informations, systèmes et autres ressources sensibles et précieux . Nous ne voulons pas que quiconque puisse y accéder à moins d'être autorisé à le faire.
Donc nous devons mettre en place des contrôles de sécurité qui maintiennent les attaquants à l'écart de ces informations et des systèmes qui les hébergent . Nous avons également besoin de contrôles de sécurité qui empêchent quiconque d'accéder à votre compte et de l'utiliser pour prétendre qu'il est vous.
C'est les raisons pour lesquelles nous avons développé toute une série de mécanismes permettant de restreindre l'accès à ces comptes, et donc aux informations et systèmes auxquels ces comptes ont accès. Les systèmes que nous avons mis en place au fil des années nous aident à empêcher tout accès non autorisé aux informations, systèmes et autres ressources sensibles. Ils nous aident également à suivre toute modification et nous permettent même d'enquêter sur un comportement suspect.
Mais comment fait-on exactement ?
Il y a cinq étapes à suivre :
- Identification
- Authentification
- Autorisation
- Audit
- Responsabilité
Identification
Afin de restreindre l'accès afin que seules les parties autorisées puissent accéder à un système, nous devons d’abord savoir qui tente d’y accéder. Ce processus est connu sous le nom d’identification et implique qu’un utilisateur revendique une identité.
Il existe plusieurs façons de procéder, mais l'une des options les plus courantes consiste à utiliser un nom d'utilisateur. Un utilisateur saisira un nom d'utilisateur dans le système, pour dire : « Hé, je suis l'utilisateur 1 ».
Il existe également d’autres façons pour les gens de s’identifier. Les identifiants biométriques comme votre scanner facial ou vos empreintes digitales deviennent populaires. Cependant, il convient de noter que celles-ci peuvent également servir de méthodes ou d’authentification, dont nous parlerons dans la section suivante.
Les cartes à puce et les jetons de sécurité peuvent également servir à la fois d’identifiants et de méthodes d’authentification, mais ils ont tendance à être plus faciles à voler. Dans de nombreuses circonstances, il est probablement préférable de les utiliser comme mécanismes d’authentification complémentaires plutôt que comme identifiant unique et moyen d’authentification.
Avant qu'un utilisateur puisse utiliser l'une de ces méthodes pour revendiquer une identité, il doit avoir été inscrit ou enregistré dans le système. Vous l’aurez fait plusieurs fois lorsque vous créerez un compte. Vous transmettez quelques-unes de vos coordonnées et leur donnez votre numéro de téléphone ou votre adresse e-mail afin qu'ils puissent vous envoyer un message pour vérifier que vous contrôlez réellement le numéro ou l'e-mail.
Si vous obtenez un nouvel emploi, le processus d'inscription peut impliquer que les RH examinent votre pièce d'identité et d'autres documents dans le cadre de leur processus de vérification pour découvrir qui vous êtes réellement. Ensuite, ils créeront un compte pour vous afin que lorsque vous essayez de vous connecter au système pour la première fois, le système sache réellement qui vous êtes.
Authentification
L'étape suivante consiste à fournir une authentification. Cependant, en réalité, l’identification et l’authentification se produisent souvent en même temps. Si l'identification implique une entité revendiquant une identité, l'authentification implique que l'entité prouve qu'elle est réellement cette personne.
Nous procédons couramment de différentes manières. Le premier type de facteur d'authentification consiste à utiliser quelque chose que seul l'utilisateur légitime doit savoir , comme un mot de passe, une clé ou les réponses aux questions de sécurité. Ceux-ci sont connus sous le nom facteurs de connaissance .
Le deuxième facteur d'authentification consiste à utiliser quelque chose que seul l'utilisateur légitime doit avoir , comme une carte à puce, un jeton de sécurité ou un appareil doté d'une application d'authentification. Ceux-ci sont appelés facteurs de propriété .
Le troisième facteur d'authentification est quelque chose que seul l'utilisateur légitime est ou fait . Ceux-ci incluent des éléments tels que votre scan du visage, vos empreintes digitales ou votre empreinte vocale. Ceux-ci sont connus sous le nom facteurs d'hérédité .
Il est préférable de combiner au moins deux de ces facteurs d’authentification. En soi, il n’est peut-être pas trop difficile pour un attaquant de découvrir le mot de passe d’une personne ou de voler sa carte à puce, mais mettre la main sur les deux est un défi beaucoup plus difficile.
Ainsi, lorsque vous vous connecterez à votre compte, vous saisirez un identifiant comme votre nom d'utilisateur et fournirez un ou plusieurs moyens d'authentification, tels que votre mot de passe et le numéro dans votre application d'authentification.
Le système auquel vous essayez de vous connecter recherchera le nom d'utilisateur dans sa base de données et s'il en trouve un, il vérifiera si l'authentification que vous avez fournie correspond à ses enregistrements. S'ils correspondent, le système vous authentifiera, ce qui signifie essentiellement que le système reconnaît que oui, vous êtes « utilisateur1 ».
Autorisation
Une fois authentifié, êtes-vous libre de faire ce que vous voulez ? Pas assez. Il y a encore une petite chose appelée autorisation à gérer.
Dans la plupart des cas, nous ne souhaitons pas avoir un système de sécurité dans lequel une fois qu’une personne s’est authentifiée, elle a ensuite accès gratuitement à tous les systèmes et ressources. Cela entraînerait d’énormes risques de sécurité, car pour causer d’immenses dommages à l’entreprise, il suffirait qu’un employé devienne malveillant ou qu’un attaquant compromette un seul compte.
Au lieu de cela, vous voulez suivre le principe du moindre privilège et donner aux utilisateurs accès uniquement aux éléments dont ils ont réellement besoin . Pour gérer cela, nous avons besoin d’une autorisation. Essentiellement, le système conserve simplement un enregistrement de ce à quoi chaque utilisateur est autorisé à accéder. Lorsqu'un utilisateur authentifié demande l'accès à une ressource, le système vérifie simplement les enregistrements. Si l'utilisateur est autorisé, le système lui accordera l'accès. Sinon, cela les refusera.
Audit
Bien que l’identification, l’authentification et l’autorisation soient probablement les aspects les plus importants du point de vue de l’utilisateur, il existe quelques aspects supplémentaires du contrôle d’accès qui sont importants pour maintenir l’intégrité du système.
L'audit consiste à conserver des enregistrements des activités des utilisateurs, par exemple le moment où ils se sont connectés et ce à quoi ils ont accédé. . Ces journaux sont essentiels pour la dernière étape du contrôle d’accès.
Comptabilité
L’un des aspects du maintien d’un système sécurisé passe par la dissuasion. Si les gens craignent de se faire prendre et craignent les répercussions possibles d’une telle prise, ils sont alors moins susceptibles d’essayer d’abuser du système.
C'est l'une des raisons pour lesquelles la comptabilité est si importante, car à cette étape nous examinons les dossiers de la phase d'audit et déterminons s'il y a eu des violations . Si c’est le cas, nous pouvons tenir l’auteur responsable de ses actes, soit en interne au sein de l’entreprise, soit en s’adressant aux autorités.
En plus d'avoir un effet dissuasif, la phase comptable nous permet de revenir sur les journaux du passé et de les utiliser pour nous aider à comprendre et à nous remettre de tout problème que nous rencontrons , ainsi que de mettre en place de nouvelles mesures de prévention pour éviter que ces problèmes ne se reproduisent à l'avenir.
À quoi sert réellement l’authentification unique ?
Nous disposons désormais de bases solides. Nous comprenons cela la connexion nous permet de permettre aux entités autorisées d'accéder à un système tout en empêchant l'accès des entités non autorisées. . Nous connaissons également chacune des étapes importantes impliquées dans le contrôle d’accès, nous sommes donc prêts à examiner plus en détail l’authentification unique (SSO).
Si une organisation ne dispose que d’un seul service auquel vous pouvez vous connecter, l’authentification unique n’est pas nécessaire. Vous vous connecterez simplement à votre compte avec le nom d'utilisateur, le mot de passe et tout autre facteur d'authentification pouvant être nécessaire. Vous pourrez alors accéder au système et faire ce que vous deviez faire. Vous pouvez ensuite vous déconnecter à la fin de la session, le service peut vous déconnecter automatiquement ou vous pouvez rester connecté pour les sessions futures, en fonction à la fois de vos préférences et des options de sécurité autorisées par le service.
Si Google proposait uniquement Gmail et qu'aucun de ses autres services n'était disponible, l'authentification unique n'apporterait aucun avantage quant à la manière dont vous accédez à Gmail. Mais comme nous le savons tous, Google propose une multitude de services différents, sur lesquels beaucoup d’entre nous comptent énormément.
Il n’est pas difficile d’imaginer une situation dans laquelle Google ne proposerait pas d’authentification unique et où vous deviez avoir des comptes distincts pour chacun des services de l’entreprise. Vous auriez votre compte Gmail, un autre pour Google Docs, un autre pour YouTube, etc. Mais ce type de configuration rendrait votre journée beaucoup plus fastidieuse.
Vous devrez vous connecter et vous déconnecter plusieurs fois lorsque vous basculez entre chaque service. , ajoutant une friction supplémentaire à chacune de vos tâches en ligne. La plupart d'entre nous sont probablement heureux que Google propose l'authentification unique, car cela facilite simplement les choses.
Bien entendu, l’authentification unique ne s’applique pas uniquement aux services de Google. Nous le rencontrons fréquemment lorsqu'il existe plusieurs services auxquels accéder au sein d'une même entreprise. .
Nous le voyons chez Microsoft avec les nombreux outils et plates-formes différents de l’entreprise auxquels vous pouvez accéder avec le même compte. Il en va de même pour Apple et les innombrables services différents qu'elle propose à ses utilisateurs. Un grand nombre d'entreprises et de gouvernements vous permettent d'accéder à une variété de leurs différentes offres, toutes avec le même compte, via une authentification unique. . L’entreprise pour laquelle vous travaillez peut également disposer d’une authentification unique.
En fin de compte, l’authentification unique est assez simple. Il permet aux utilisateurs de s'authentifier une fois, puis d'accéder à plusieurs services au sein d'une même organisation. , au lieu de devoir se réauthentifier à chaque fois qu'ils changent de service. En fin de compte, cela sert à simplifier les choses, à réduire la complexité et à améliorer l’expérience utilisateur.
L'authentification unique peut être réalisée à l'aide de diverses techniques différentes, dont certaines seront abordées dans la section Mécanismes d'authentification unique section.
Les avantages de l'authentification unique (SSO)
Jusqu’à présent, nous avons principalement discuté des avantages les plus évidents de l’authentification unique (SSO) ; qu'il réduit les frictions, facilite les choses pour l'utilisateur et améliore l'expérience utilisateur. Mais il y a aussi d’autres avantages :
L’authentification unique peut faire gagner du temps aux employés
En réduisant le nombre de connexions qu'un utilisateur effectue par jour, l'authentification unique peut réellement permettre de gagner du temps et d'augmenter la productivité . S'il est vrai que la connexion ne prend qu'environ 30 secondes, lorsque nous additionnons cela au cours d'une journée pour chaque employé, puis que nous le totalisons dans une organisation, l'authentification unique peut en réalité faire économiser à une entreprise une quantité importante de temps. temps.
La connexion peut également interrompre les travailleurs de leur flux, il est donc possible que ces pauses de 30 secondes entraînent une perte de productivité plus importante.
L'authentification unique peut réduire la fatigue liée aux mots de passe et améliorer la sécurité
Un autre avantage potentiel est que l’authentification unique peut réduire la fatigue liée aux mots de passe. Chacun de nous possède des dizaines, voire des centaines de comptes en ligne. Si vous suivez meilleures pratiques en matière de mots de passe , cela signifie que vous devriez également avoir des dizaines ou des centaines de mots de passe uniques .
En réalité, l’une des seules stratégies valables pour conserver autant de mots de passe uniques et forts consiste à les stocker dans un gestionnaire de mots de passe.
De nombreuses personnes n’ont toujours pas reçu le mémo sur les gestionnaires de mots de passe, ce qui signifie généralement qu’ils font une ou plusieurs choses, chacune étant horrible du point de vue de la sécurité. Soit ils utilisent le même mot de passe pour tout, font de légères variations du mot de passe pour chaque compte, soit ils notent simplement chacun de leurs mots de passe et les conservent à un endroit pratique. Chacun de ces choix est terrible pour la sécurité, car ils laissent les gens vulnérables bourrage d'informations d'identification et d'autres attaques.
Alors, quel rôle l’authentification unique joue-t-elle dans tout cela ? L'authentification unique peut contribuer à réduire le nombre de comptes gérés par chaque personne. . La théorie est que si une personne possède moins de comptes, ils seront plus susceptibles d'utiliser des mots de passe forts et uniques .
Disons que nous avons deux organisations, Organisation A et Organisation B , dont chacun dispose de cinq services différents que leurs employés doivent utiliser. L'organisation A propose une authentification unique. les employés peuvent se connecter à tous ces services avec un seul compte et un seul mot de passe . L'organisation B ne dispose pas d'authentification unique et chaque employé dispose de cinq comptes distincts pour lesquels il doit essayer de mémoriser les mots de passe .
Selon vous, quelle organisation se retrouvera avec plus d’employés suivant de bonnes pratiques en matière de mots de passe ?
Dans le cas de l’organisation A, les employés ne doivent mémoriser qu’un seul mot de passe supplémentaire, ce qui représente une charge cognitive bien moindre. En réalité, il n’est probablement pas trop difficile pour quelqu’un de se souvenir d’un mot de passe fort et unique qu’il utilise quotidiennement pour son travail, même s’il ne dispose pas de gestionnaire de mots de passe.
Dans l'organisation B, chaque employé doit mémoriser cinq mots de passe. Certains de ces comptes ne seront peut-être pas utilisés trop fréquemment, ce qui les rendrait encore plus difficiles à mémoriser. Selon vous, que se passerait-il dans ce scénario ?
De nombreux employés seraient probablement amenés à réutiliser leurs mots de passe ou à les écrire et à les laisser à leur bureau. Faire l’une ou l’autre de ces choses augmenterait considérablement les risques, mais il est difficile de blâmer les employés quand il est tout simplement trop difficile pour eux de faire ce qu’il faut. Finalement, avoir cinq comptes distincts pour chaque employé peut être préjudiciable à la sécurité globale de l’organisation B.
L’authentification unique peut réduire les charges administratives
Dans la dernière section, nous avons mentionné que si les employés doivent mémoriser cinq mots de passe, ils sont plus susceptibles d’en oublier certains. Que se passe-t-il lorsque les employés oublient tout le temps leur mot de passe ? Ils appellent le service d'assistance, puis le pauvre technicien doit accompagner l'employé dans la réinitialisation de son compte pour la millième fois.
Si l’infrastructure d’une organisation est configurée de manière à ce que chaque employé dispose de plusieurs comptes, davantage de personnes oublieront leurs mots de passe et le service d’assistance sera inondé d’appels pour aider les employés qui n’ont pas accès à leurs comptes.
Non seulement cela prend beaucoup de temps au service informatique, mais cela signifie également que tous ces autres employés ne font pas leur travail lorsqu'ils sont au téléphone avec le service d'assistance.
Un autre avantage administratif majeur de l'authentification unique est qu'il n'y a qu'un seul système de compte à gérer au lieu de plusieurs systèmes disparates. . Cela peut réduire considérablement les frais généraux et rendre la maintenance beaucoup plus facile. Cela rend également moins probable que des choses soient accidentellement négligées.
À titre d'exemple, si un employé est licencié de l'entreprise et doit voir son accès supprimé par un administrateur, c'est beaucoup plus facile à faire s'ils n'ont qu'à supprimer les privilèges d'un seul compte . S’il existe plusieurs comptes pour cet employé, cela peut augmenter la probabilité qu’un seul soit oublié.
Lorsque de telles erreurs sont plus faciles à commettre, les risques auxquels l’organisation est confrontée sont également plus susceptibles de se concrétiser. Dans l’exemple que nous venons de citer, l’employé licencié peut revenir se faufiler dans l’entreprise et voler des données ou saboter les systèmes de l’entreprise.
Le côté obscur de l’authentification unique (SSO)
Jusqu’à présent, nous avons principalement parlé du côté positif de l’authentification unique (SSO). Malheureusement, il n'y a pas de déjeuner gratuit, et il y a aussi des inconvénients .
De nombreux inconvénients de l’authentification unique sont étroitement liés à ses avantages. Nous venons de parler des avantages de pouvoir accéder à tout avec un seul compte et avons également démontré comment la centralisation des systèmes de contrôle d’accès peut faciliter l’administration.
Mais La centralisation des choses a également tendance à créer des points de défaillance uniques, ce qui peut augmenter les risques de catastrophe. . Si un employé utilise cinq comptes différents pour effectuer son travail et que l’un d’entre eux est compromis, il pourra toujours accéder à ses quatre autres comptes. Ils peuvent encore être capables d’accomplir une partie importante de leurs tâches quotidiennes.
Lorsqu’il n’y a qu’un seul compte pour l’authentification unique et que les choses se passent mal, c’est une toute autre histoire. Les employés peuvent ne pas avoir accès à quoi que ce soit, ce qui signifie que l'ensemble de l'organisation s'arrête jusqu'à ce que le problème puisse être résolu .
L’authentification unique est confrontée à un problème similaire en matière de compromission de comptes. Si un employé possède cinq comptes différents et qu'un attaquant parvient à trouver les informations d'identification de l'un d'entre eux, cela ne donnera à l'attaquant qu'un accès à un sous-ensemble plus petit de systèmes et de données auxquels l'employé est autorisé à accéder. .
Cependant, lorsque l'employé ne dispose que d'un seul compte pour tous ses services et qu'un attaquant le compromet, cela signifie que l'attaquant a accès à tout ce à quoi l'employé peut accéder . Même si tout type de compromission du compte d’un employé constitue un problème sérieux, plus un attaquant dispose d’accès, plus il peut causer de tort à l’organisation.
En gardant à l’esprit ce préjudice accru, les organisations qui adoptent l'authentification unique doivent également prendre des mesures pour atténuer les dangers pouvant découler de la violation de l'un de ces comptes. . Authentification multifacteur est essentiel pour toute organisation disposant d’une authentification unique, car elle rend beaucoup plus difficile pour un attaquant de compromettre le compte d’un employé.
Gestion des identités fédérées (FIM)
Ajoutons maintenant une couche supplémentaire de complexité et parlons de la gestion fédérée des identités (FIM). Au lieu d'une situation où nous avons une seule organisation avec de nombreux services différents auxquels nous souhaitons accéder, envisageons d'accéder à différents services dans un certain nombre d'organisations distinctes .
Comment pourrions-nous nous connecter à chacun d’eux, le tout avec un seul compte ? Pourquoi voudrions-nous même le faire ? Quels sont les points positifs et négatifs de cette démarche ?
La gestion des identités fédérées est fondamentalement la même que l'authentification unique, sauf qu'elle va encore plus loin et nous permet d'accéder aux services de plusieurs entreprises différentes, le tout avec une seule authentification. . Le terme authentification unique est également souvent utilisé pour désigner la gestion des identités fédérées.
En termes techniques, nous considérerions les services de chaque entreprise différente comme faisant partie de services distincts. domaines de sécurité . Avec la gestion fédérée des identités, nous visons à relier ces domaines.
Il s'agit d'un concept incroyablement attrayant, car pour la plupart d'entre nous, notre travail et notre vie personnelle nous obligent souvent à basculer entre un certain nombre de services différents, chacun provenant d'entreprises indépendantes. Ne serait-il pas bien mieux si nous avions un moyen simple de passer de l’un à l’autre ?
Et si, au lieu de pouvoir utiliser une seule identité et une seule authentification dans plusieurs entreprises différentes, nous pouvions également partager des ressources entre elles ?
Bien sûr, certains de vos comptes sont probablement déjà configurés pour ce faire. La gestion fédérée des identités (FIM) joue un rôle important à cet égard, nous permettant de rationaliser et de connecter les différents services que nous utilisons dans notre vie professionnelle et personnelle. .
Comment fonctionne la gestion fédérée des identités (FIM) ?
Afin que les utilisateurs puissent utiliser une seule identité dans plusieurs sociétés ou domaines de sécurité différents, les organisations doivent d'abord se rassembler et former une fédération . Ensuite, ils doivent décider de la manière dont ils partageront tous leurs identités. Cela peut s’avérer difficile, car chaque entreprise disposera de sa propre plate-forme et de l’infrastructure environnante, ce qui peut rendre difficile l’accord sur des normes compatibles que toutes peuvent partager.
Cependant, il existe quelques options courantes comme SAML ou la combinaison d'OpenID Connect et d'OAuth 2.0, dont nous parlerons plus tard.
Une fois qu'un groupe d'organisations se réunit, forme une fédération et se met d'accord sur la manière dont elles partageront leurs identités, les utilisateurs peuvent ensuite se connecter à n'importe laquelle des organisations et voir leurs informations d'identification liées à leur identité fédérée . Cette identité fédérée leur permet alors d'accéder aux ressources d'autres organisations au sein de la fédération, sans avoir à se réauthentifier.
Vous remarquerez souvent les signes de l'identité fédérée lorsque vous vous connecterez à un site Web et que vous verrez les options pour vous connecter avec Google ou Facebook, en plus d'utiliser votre propre compte.
Lorsque vous remarquez ces options, le site Web auquel vous essayez de vous connecter vous permet également d'utiliser ces services tiers pour vous connecter , au lieu d'utiliser le vôtre. Le site Web fait essentiellement confiance à Google ou à Facebook pour effectuer l’authentification afin de ne pas avoir à le faire. En fin de compte, cela peut rationaliser les choses pour les utilisateurs, car cela signifie qu’ils n’ont pas besoin de créer un autre compte.
Cependant, vous devez savoir que si vous utilisez des services comme Google ou Facebook pour vous connecter à d'autres sites, cela signifie généralement qu'au moins une partie de vos les données sont partagées entre eux et le site auquel vous vous connectez.
La gestion des identités fédérées s'accompagne également du problème du point de défaillance unique dont nous avons parlé plus tôt. . Mais cette fois-ci, les résultats peuvent être encore plus désastreux, car il ne s’agit pas seulement de plusieurs services au sein d’une même organisation. Si le fournisseur que vous utilisez pour l’authentification tombe en panne, des problèmes pourraient survenir avec les services sur lesquels vous comptez sur plusieurs plates-formes différentes.
Problèmes de sécurité dans les systèmes de gestion des identités fédérés
Comme la plupart des autres mécanismes de sécurité, les systèmes de gestion des identités fédérés peuvent être abusés ou contournés. Certains des problèmes les plus notables du passé comprennent :
Des acteurs étatiques russes ciblent les systèmes fédérés de gestion des identités
En 2020, la NSA a publié un Avis de cybersécurité avertissement de acteurs malveillants ciblant les environnements d'authentification fédérés . L’agence a noté deux techniques distinctes qui commençaient toutes deux par l’accès au réseau de la cible.
La documentation de la NSA ne précise pas comment les acteurs ont obtenu cet accès initial, mais le phishing visant à voler des informations d’identification ou à installer des logiciels malveillants est probablement un coupable. Un plus tôt Avis de cybersécurité sur les mêmes exploits indiquait que l'acteur était un groupe parrainé par l'État russe. Un attaquant aussi bien doté en ressources disposerait d’un large éventail de techniques pour infiltrer le réseau sur site de sa cible.
L'avis de cybersécurité a également démontré comment les attaquants ont exploité les vulnérabilités de VMware Identity et VMware Access pour compromettre l'infrastructure d'authentification unique fédérée.
Une fois l’attaquant présent dans le réseau de la cible, l'une de leurs techniques consistait à compromettre l'infrastructure d'authentification unique fédérée . Ils voleraient la clé privée ou les informations d'identification utilisées pour signer les jetons SAML (Security Assertion Markup Language). Ne vous inquiétez pas, nous discuterons de SAML plus en profondeur dans le Mécanismes d'authentification unique section. Cela leur a permis de forger des jetons d’authentification qui pourraient ensuite donner à l’attaquant l’accès aux ressources cloud de l’organisation ciblée.
Si les attaquants ne parvenaient pas à mettre la main sur une clé de signature sur site, ils tenteraient une variante de cette technique. Cela impliquait d'essayer d'augmenter leurs privilèges jusqu'à ce qu'ils obtiennent des privilèges d'administrateur au sein du locataire cloud. Une fois qu’ils disposaient de ce niveau d’accès, ils créaient une « relation de confiance de certificat malveillante » qui était ensuite utilisée pour forger des jetons SAML. Cela a compromis la sécurité de l’infrastructure d’authentification unique fédérée.
L'autre technique impliquée compromettre un compte d'administrateur global et l'utiliser pour attribuer des informations d'identification à des identités spéciales pour les applications cloud . Ces identités permettaient aux applications d'être utilisées pour accéder à d'autres ressources cloud. Avec les informations d’identification de ces identités en main, les attaquants utiliseraient l’application pour obtenir un accès automatisé à la messagerie électronique et à d’autres ressources cloud de leur cible. Cela leur a permis d’accéder à des données sensibles sans éveiller trop de soupçons sur le réseau de la cible. .
Même si les acteurs étatiques russes étaient spécifiquement mentionnés dans les avis, la NSA a également noté qu’un certain nombre d’autres acteurs pourraient utiliser ces mêmes tactiques. La technique utilisée pour falsifier les jetons SAML est utilisée par les acteurs malveillants depuis au moins 2017.
Il est important de savoir que ces techniques d’attaque n’ont pas été rendues possibles en raison de vulnérabilités du protocole SAML, des services d’identité cloud ou de la gestion fédérée des identités. Au lieu de cela, le vrai problème est que la sécurité de ces mécanismes repose sur la confiance dans les systèmes sur site impliqués dans l'authentification, l'octroi de privilèges et la signature des jetons SAML. Étant donné que l’attaquant a réussi à compromettre ces systèmes sur site, cela a également entraîné la compromission du système d’authentification unique fédéré.
Pour lutter contre ces menaces, la NSA a recommandé de renforcer les systèmes sur site pour les services de fédération et l'identité sur site . Il a également conseillé de verrouiller l’utilisation du principal de service et les configurations d’authentification unique des locataires. La surveillance continue de l’utilisation des jetons d’authentification unique est également essentielle pour détecter de futures compromissions.
Redirection secrète
En 2014, un doctorant singapourien découvert une attaque cela a été surnommé Covert Redirect. Cela a permis à un pirate informatique de tromper les utilisateurs pour qu'ils transmettent leurs informations via une fausse fenêtre contextuelle d'autorisation.
L'attaque pourrait fonctionner contre les protocoles OAuth 2.0 et OpenID, que nous décrirons plus en détail vers la fin de l'article. OAuth 2.0 est un protocole d'autorisation déléguée et, parallèlement à OpenID, il peut être utilisé pour la gestion des identités fédérées. Entre autres, ces protocoles permettent à un utilisateur de s'authentifier sur un site Internet auprès d'un fournisseur tiers .
L'attaque impliquait de manipuler l'utilisateur pour lui faire croire qu'il s'authentifiait via une fenêtre tierce légitime, alors que ils tapaient simplement leur nom d'utilisateur et leur mot de passe dans une fausse fenêtre construite par l'attaquant . En fin de compte, l’attaque pourrait conduire à la compromission du compte de l’utilisateur ou à l’installation de logiciels malveillants sur son appareil.
Cependant, l’attaque n’était possible que si le service de connexion et l’application à laquelle l’utilisateur tentait d’accéder étaient tous deux mal sécurisés. Cela impliquait également un certain nombre d'autres étapes critiques pour que cela soit possible, ce qui a rendu assez difficile la mise en place d'une redirection secrète contre les victimes. Cela signifiait que Covert Redirect n’était pas aussi dangereux que certains médias de l’époque l’auraient fait croire, et qu’il ne s’agissait pas non plus vraiment d’un problème spécifique aux protocoles OpenID Connect et OAuth.
Mécanismes d'authentification unique
Voici quelques-unes des solutions d'authentification unique les plus courantes, soit pour une seule organisation, soit pour la gestion fédérée des identités entre un groupe de différentes entreprises.
Protocole d'accès léger aux répertoires (LDAP)
Si une entreprise souhaite que ses utilisateurs puissent utiliser les mêmes comptes pour accéder à plusieurs services différents, elle devra mettre en œuvre une méthode pour centraliser ses systèmes de contrôle d'accès. Une option consiste à adopter un service d'annuaire , qui est une base de données qui stocke des informations sur les utilisateurs et les ressources auxquelles ils sont autorisés à accéder.
Le protocole léger d'accès à l'annuaire (LDAP) constitue la base de bon nombre de ces services d'annuaire. , l'un des plus importants étant Active Directory de Microsoft . Ils sont généralement utilisés comme solutions sur site pour le contrôle d’accès au sein d’une seule organisation. Cependant, il peut exister des extensions pour la gestion des identités fédérées, telles que les services de fédération Active Directory de Microsoft.
Les annuaires LDAP permettent aux utilisateurs et à d'autres parties de rechercher l'emplacement d'une ressource, d'un service ou d'un système spécifique. Les utilisateurs doivent s'authentifier auprès du service d'annuaire avant de pouvoir l'interroger, et la réponse du service d'annuaire n'inclura que les informations auxquelles l'utilisateur est autorisé à accéder. . LDAP peut utiliser un certain nombre de mécanismes différents pour l'authentification, notamment les noms d'utilisateur et les mots de passe, certificats numériques et Kerberos.
Un domaine de sécurité est un ensemble d'utilisateurs et de ressources qui suivent une politique de sécurité unique . Bien qu'ils puissent fonctionner de manière autonome, les services d'annuaire basés sur LDAP permettent également à différents domaines de sécurité d'établir des connexions fiables.
Lorsque ces connexions sont établies, cela permet aux utilisateurs d'un domaine de sécurité d'accéder aux ressources d'un autre. Cela aide les organisations à faciliter l’authentification unique entre les services faisant partie de différents domaines de sécurité.
Kerberos
Comme nous l'avons mentionné, Kerberos peut jouer un rôle dans l'authentification des systèmes d'authentification unique basés sur LDAP. Cependant, cela ne se limite pas aux systèmes liés à LDAP. Le protocole Kerberos comporte un mécanisme de ticket qui lui permet de jouer un rôle dans d'autres solutions d'authentification unique. .
Kerberos a été initialement développé au Institut de technologie du Massachusetts (MIT) dans les années 1980. Il porte le nom du chien à trois têtes de la mythologie grecque, Cerbère, qui garde les portes de l'enfer et empêche les morts de s'échapper. En tant que protocole impliqué dans le contrôle de l'accès aux systèmes, le nom est assez approprié, bien que peut-être un peu trop dramatique.
Nous utilisons actuellement le cinquième version du protocole Kerberos pour assurer l'authentification des clients et des serveurs . Il implique une entité tierce connue sous le nom de centre de distribution de clés (KDC), via laquelle tous les clients et serveurs sont enregistrés. Le KDC utilise la cryptographie pour authentifier les parties les unes auprès des autres et conserve également les clés de tous les membres de son réseau.
Les fonctions du KDC comprennent :
- Un service d'attribution de billets
- Un service d'authentification
Le protocole Kerberos est souvent impliqué dans l'authentification unique. Négociations Kerberos par Jeran Renz sous licence CC BY-SA 4.0 .
Ces deux éléments sont généralement hébergés sur le serveur d'authentification Kerberos, souvent appelé KDC lui-même. . Il est toutefois possible que le service d'attribution de tickets soit hébergé sur un autre serveur.
Pour simplifier le fonctionnement de Kerberos, le client doit d'abord s'authentifier auprès du serveur d'authentification avec son nom d'utilisateur et son mot de passe. Le client reçoit ensuite une clé secrète du KDC, qui est cryptée avec un hachage du mot de passe de l'utilisateur. Le KDC crée également un fichier horodaté ticket d'octroi de tickets , et envoie les deux au client. Le client déchiffre la clé symétrique et installe le ticket d'octroi de ticket, qu'il peut ensuite utiliser jusqu'à son expiration.
Maintenant que le KDC et le client ont établi les détails nécessaires pour établir des connexions sécurisées, le client peut demander un ticket au serveur Kerberos chaque fois qu'il souhaite accéder à une ressource protégée . Pour ce faire, il envoie son ticket d'octroi de ticket avec la requête au serveur Kerberos.
Le KDC vérifie ensuite le ticket et si la demande est valide. Si tout est valide, il répond alors au client en lui envoyant un ticket de service . Le client peut alors envoyer ce ticket de service au serveur de services , lequel est le serveur qui héberge la ressource protégée à laquelle le client souhaite accéder . Le serveur de service ramène ensuite le ticket du client au KDC pour le faire vérifier. Si tout est valide, le serveur de service envoie ensuite la ressource protégée au client.
Kerberos est un peu compliqué pour une explication aussi brève et simplifiée, mais le point important à retenir est que le système de billetterie offre une fonctionnalité d'authentification unique à Kerberos . Le client n'a qu'à saisir une seule fois son nom d'utilisateur et son mot de passe, puis les tickets lui permettent d'accéder à plusieurs services distincts sans avoir à s'authentifier à plusieurs reprises.
Langage de balisage d'assertion de sécurité (SAML)
Lorsque les organisations souhaitaient mettre en œuvre l’authentification unique au sein d’une fédération, elles étaient confrontées à des défis techniques complexes. Les organisations ont tendance à développer leurs plateformes de manière indépendante, ce qui signifie que leur infrastructure sous-jacente peut ne pas être compatible avec celle des autres organisations qu'elles souhaitent inclure dans leur fédération.
Les fédérations avaient besoin d’une norme ouverte sur laquelle chacune de ces organisations disparates pourrait s’entendre. . Ils avaient besoin de quelque chose qu'ils pourraient tous utiliser et comprendre mutuellement afin de gérer les identités des utilisateurs entre eux et d'échanger les informations d'authentification et d'autorisation pertinentes.
Le langage SAML (Security Assertion Markup Language) a été l’un des premiers cadres permettant d’y parvenir. Ses origines remontent à une réunion en 2001 du comité technique des services de sécurité basés sur XML, qui est une sous-branche de l'Organisation pour l'avancement des normes d'information structurées (OASIS).
Dans le minutes de la réunion , le comité a clairement énoncé ses objectifs :
« L'objectif du comité technique sur les services de sécurité basés sur XML est de définir un cadre XML pour l'échange d'informations d'authentification et d'autorisation. »
Le comité a commencé son travail en utilisant des spécifications et des langages antérieurs provenant d'organisations contributrices. En 2002, ils ont annoncé version 1.0 du langage SAML (Security Assertion Markup Language) en tant que norme OASIS. Une mise à niveau est intervenue sous la forme de la version 1.1 en 2003. En 2005, SAML 2.0 est sorti , qui était une convergence des travaux SAML antérieurs et du cadre de fédération d'identité (ID-FF) de Liberty Alliance.
L'ID-FF était un framework avec une vision très similaire à SAML. Tous deux cherchaient à développer des mécanismes échangeables d’authentification et d’autorisation entre organisations. Il a été développé par Liberty Alliance, un consortium regroupant certains des les plus grands noms de la technologie de son époque, comme AOL, Sun Microsystems et HP.
SAML2.0 est toujours la version utilisée aujourd'hui, et il s'agit d'un langage basé sur XML qui offre aux organisations un moyen compatible d'échanger des informations d'authentification et d'autorisation . Il facilite l'authentification unique via les navigateurs Web et permet aux utilisateurs d'accéder aux ressources d'autres organisations de la fédération, même si elles se trouvent dans des domaines de sécurité distincts.
SAML s'articule autour des assertions et des relations de confiance entre les parties au sein d'une fédération. Du point de vue de l'utilisateur, SAML lui permet de se connecter à Site Web A puis être dirigé vers Site Web B , un autre partenaire de la même fédération.
Étant donné que le site Web A a déjà authentifié l'utilisateur et que les deux sites Web utilisent SAML pour partager des identités, l'utilisateur n'a pas besoin de se réauthentifier pour accéder aux parties privilégiées du site Web B. En utilisant les termes SAML pour notre exemple, Le site Web A serait le fournisseur d'identité , alors que Le site Web B serait le fournisseur de services . Étant donné que le fournisseur de services fait confiance au fournisseur d’identité et à l’authentification qu’il a effectuée, il n’a pas besoin de réauthentifier l’utilisateur.
OAuth 2.0 et OpenID Connect
OAuth 2.0 est avant tout un protocole d’autorisation déléguée , alors que Connexion OpenID est une couche d'authentification construite par-dessus . Les versions antérieures de chaque protocole sont apparues au milieu des années 2000 et étaient légèrement différentes. Ces deux itérations se complètent et sont souvent mis en œuvre ensemble pour fournir l'autorisation et l'authentification dans un système de gestion d'identité fédérée .
Bien qu'OpenID Connect fonctionne sur OAuth 2.0, les deux jouent des rôles différents. OpenID Connect est responsable de l'authentification et de la gestion des identités des utilisateurs.
Il permet à un utilisateur de s'authentifier auprès de plusieurs services dans différents domaines de sécurité. , ce qui signifie qu'il peut être utilisé pour gérer leur identité entre les organisations d'une fédération. Si un utilisateur s'est authentifié auprès d'une organisation au sein de la fédération, il n'a pas besoin de se réauthentifier auprès des autres parties.
OAuth 2.0 concerne l'autorisation et l'octroi aux utilisateurs de l'accès aux ressources. Cela fonctionne souvent sous le capot lorsque vous voyez une fenêtre contextuelle qui dit quelque chose du genre :
« L'application XYZ souhaite accéder aux informations de votre profil. Souhaitez-vous lui accorder l’accès ? »
Il facilite le partage de données et d'autres ressources entre différents services, par exemple en permettant à Uber d'accéder à certaines de vos informations depuis Facebook.
Bien que cela puisse sembler un exemple effrayant avec des ramifications importantes en matière de confidentialité, OAuth 2.0 vous permet de contrôler et de limiter l'accès le long de limites prédéfinies. Cependant, vous devez lire les petits caractères.
Dans notre monde interconnecté où nous devons constamment partager des données entre applications pour automatiser nos flux de travail et rationaliser nos services, OAuth 2.0 nous permet de le faire sans avoir à nous authentifier constamment et à autoriser l'accès à chaque fois que les applications se parlent.
Bien que les deux normes puissent être déployées indépendamment dans certaines situations, le fait qu'OpenID Connect soit conçu au-dessus d'OAuth 2.0 en fait une excellente solution dans les cas où une autorisation et une authentification sont requises.
L’authentification unique est-elle sûre ?
Comme pour de nombreuses questions en matière de cybersécurité, la réponse n’est pas si simple. Nous avons déjà expliqué comment l'authentification unique présente à la fois des avantages et des inconvénients en matière de sécurité, les principaux points de chaque côté étant les suivants : cela peut réduire la fatigue des mots de passe , mais c'est aussi crée des systèmes centralisés avec des points de défaillance uniques .
L’authentification unique implique des compromis, mais si l’on considère également les avantages pratiques du point de vue de l’utilisateur, il est difficile de considérer l’authentification unique comme une évolution négative globale dans notre paysage technologique.
Au lieu de cela, il est probablement préférable de reconnaître que c’est la direction que prend l’industrie et qu’elle nous rend la vie beaucoup plus facile. Cependant, les responsables de la mise en œuvre et les utilisateurs de l'authentification unique doivent être conscients des compromis qu'ils font et prendre des mesures pour atténuer les risques. .
En raison de la nature centralisée de l’authentification unique, elle peut effectivement donner aux attaquants les clés du château lorsqu’ils compromettent un compte. Il est important que nous déployions des contrôles de sécurité plus stricts, tels que l'authentification multifacteur. .
Il convient également de rappeler que l’authentification unique n’est pas un monolithe et qu’elle peut être réalisée avec toute une série de technologies différentes, dont certaines que nous n’avons pas eu l’occasion de mentionner dans cet article.
La technologie qu’une organisation choisira dépendra de sa situation individuelle. Si c’est uniquement pour l’intérieur des locaux, une ancienne solution basée sur LDAP peut être plus que suffisante.
Dans d'autres situations, les bons choix peuvent impliquer une combinaison d'OAuth 2.0 et d'OpenID Connect. Quel que soit le choix finalement choisi par une entreprise, il est essentiel qu’elle évalue ses options et trouve la meilleure solution pour son scénario unique. Il est également important de prendre en compte les faiblesses de sécurité de cette solution spécifique et de trouver des moyens de contribuer à limiter les risques qui pourraient émaner d’une mise en œuvre donnée.