Inscription et authentification sans e-mail et sans mot de passe

Les problèmes d’insécurité et d’utilisabilité des mots de passe sont bien connus. Les mots de passe, étant quelque chose que l’on sait, sont vulnérables à l’oubli, ce qui arrive fréquemment. Ainsi, le courriel est largement utilisé comme méthode de secours pour réinitialiser les mots de passe.

Le courriel pose également de nombreux problèmes. Tout comme pour les mots de passe, les personnes réutilisent généralement la même adresse courriel sur de nombreux services, créant un risque pour la vie privée si cette adresse est découverte par l’un de ces services. Il devient de plus en plus difficile d’obtenir une adresse courriel sans fournir d’informations personnellement identifiables au serveur de messagerie. Pour dissuader le spam (et probablement aussi parce que cela facilite le ciblage publicitaire), les services de courriel gratuits exigent généralement la fourniture d’un numéro de téléphone, facile à associer à une personne spécifique. Les services de courriel payants peuvent ne pas exiger de numéro de téléphone, mais payer pour un service sans fournir d’informations personnellement identifiables reste difficile, et s’appuyer sur un abonnement à un service de courriel payant est vulnérable aux changements de situation financière. De plus, il est difficile d’héberger de manière fiable son propre serveur de messagerie de nos jours. Outre les problèmes de confidentialité, la centralisation créée par la réutilisation d’un compte de courriel sur de nombreux services engendre également un risque de sécurité, car la compromission d’un compte de courriel entraînerait la compromission de nombreux autres comptes.

De nos jours, nous n’avons plus besoin ni de mots de passe ni de courriels pour nous inscrire ou nous authentifier sur un service. Discourse prend déjà en charge FIDO et TOTP, mais il nécessite toujours un mot de passe et une adresse courriel pour l’inscription et l’authentification. Il serait idéal que Discourse rende les mots de passe et les adresses courriel optionnelles en faveur de FIDO et TOTP.

L’authentification à un seul facteur avec FIDO peut être très pratique, mais elle est vulnérable à la perte ou à la destruction du seul jeton FIDO, tout comme le problème d’inscription avec un mot de passe mais sans adresse courriel. Pour résoudre ce problème, je propose que les utilisateurs soient tenus de fournir au moins deux facteurs lors de l’inscription, ce qui pourrait être n’importe quelle combinaison de FIDO, TOTP et/ou mot de passe. Les utilisateurs souhaitant une authentification sans courriel ni mot de passe pourraient simplement s’inscrire avec deux authentifiants FIDO roaming, comme des YubiKeys. Il pourrait être conseillé (voire exigé, en particulier pour les administrateurs) aux utilisateurs de s’inscrire avec plus que le minimum de deux facteurs afin d’éviter de perdre l’accès à leurs comptes.

Étant donné que les authentifiants FIDO intégrés aux plateformes sont de plus en plus présents dans les appareils modernes, avec Windows Hello, Apple Touch & Face ID et Android, ce système d’inscription sans courriel pourrait être utilisable par des utilisateurs non techniques ne possédant pas de matériel d’authentifiant roaming spécialisé comme une YubiKey. Les utilisateurs pourraient s’inscrire avec l’authentifiant FIDO intégré à leur plateforme plus un mot de passe. L’authentification à un seul facteur avec l’authentifiant FIDO intégré pourrait fonctionner de manière transparente avec une telle configuration. Cependant, cela créerait un problème d’utilisabilité pour l’authentification sur de nouveaux appareils, car les utilisateurs n’auraient pas l’authentifiant FIDO intégré disponible sur un nouvel appareil, et se fier uniquement au mot de passe pour configurer un nouvel appareil ne serait pas sécurisé. Pour résoudre ce problème, je propose un flux de travail similaire à celui utilisé par Matrix pour authentifier de nouveaux clients. L’utilisateur pourrait tenter de se connecter sur un nouvel appareil en utilisant l’authentifiant FIDO intégré à cet appareil (un nouveau facteur) et son mot de passe (un facteur déjà enregistré). Cela ne permettrait pas de se connecter immédiatement, mais cela créerait une demande d’approbation du nouvel authentifiant FIDO dans le compte. L’interface utilisateur sur le nouvel appareil redirigerait ensuite l’utilisateur vers un appareil déjà enregistré pour approuver le nouvel appareil. Avec les authentifiants FIDO intégrés aux appareils mobiles, cela pourrait être pratiquement utilisable pour une authentification sécurisée sans matériel d’authentifiant roaming spécialisé, tout en conservant la possibilité d’utiliser n’importe quel appareil occasionnel, comme un kiosque public.

J’ai imaginé ce système d’inscription et d’authentification anonyme hier après avoir reçu mes YubiKeys. Je ne connais aucun système qui l’implémente. J’aimerais voir une application web mature et déjà largement déployée, telle que Discourse, ouvrir la voie à un avenir où l’utilisation d’Internet ne nécessiterait ni courriel ni autres informations personnellement identifiables.

3 « J'aime »

C’est probablement vrai. Mais il est difficile d’imaginer que quiconque se connecterait avec le système que vous proposez ignore ce qu’est un gestionnaire de mots de passe. J’utilise un gestionnaire de mots de passe depuis une dizaine d’années, possède plusieurs clés FIDO, utilise Google Authenticator, et je ne comprends pas tout à fait ce que vous proposez.

Il semble peu probable qu’un tel système soit ajouté à moins que quelques clients d’entreprise ne le souhaitent. Je pense que cela représente au moins 50 heures de travail pour quelqu’un qui connaît bien le système d’authentification, et probablement le double avec des spécifications appropriées. Il y a eu une tentative il y a quelque temps d’intégrer Keybase, ce qui pourrait faire une partie de ce que vous souhaitez, mais je ne pense pas que cela ait beaucoup avancé.

C’est une idée intéressante, cependant. Peut-être que c’est plus simple que je ne le pense.

1 « J'aime »

Toute personne disposant d’un appareil récent intégrant un authentificateur de plateforme FIDO pourrait l’utiliser très facilement. Dans quelques années, cela pourrait concerner presque tout le monde.

Je l’ai dit dans le titre : rendre l’e-mail facultatif. Rendre les mots de passe facultatifs serait également excellent.

Je suis sûr que cela demanderait un travail considérable à mettre en œuvre. Je pense que la partie la plus difficile consisterait à rendre la conception de l’expérience utilisateur vraiment claire. Discourse dispose déjà des éléments de base nécessaires, avec la prise en charge de la 2FA via FIDO et TOTP.

1 « J'aime »

Une petite première étape pour mettre cela en œuvre consisterait à intégrer l’interface utilisateur d’enregistrement FIDO et TOTP directement dans l’interface d’inscription, évitant ainsi une étape supplémentaire dans les préférences après la première connexion. Par la suite, le design de l’interface pourrait être amélioré pour rendre l’email et le mot de passe optionnels.

1 « J'aime »

Je suis curieux de connaître l’avis de @codinghorror sur ce sujet, au vu de ses nombreux articles de blog sur les mots de passe.

3 « J'aime »

L’e-mail devrait être facultatif. L’utilisation de l’e-mail devient de plus en plus peu fiable, impossible en raison du grand oligopole des fournisseurs d’e-mail.

Maintenant, gmail bloque soudainement mon nom de domaine.

  • Même après avoir parfaitement configuré toute la sécurité de l’e-mail (SPF, DKIM, DMARC, …) pendant des années
  • Qu’est-ce que j’entends par parfait ? Tous les outils de test et de rapport de sécurité des e-mails indiquent “100% OK” et
  • le nom de domaine n’a pas figuré sur des listes de spam (spamhouse…) depuis des années non plus.

Mais vous pouvez contacter gmail ? Bien sûr…

Citation Sender Contact Form - Gmail Help

Nous utiliserons les informations que vous fournissez pour enquêter et améliorer nos systèmes de détection de spam et d’abus. Malheureusement, nous ne pouvons pas fournir de détails sur nos conclusions pendant ou après l’enquête.

Donc, la réponse sera probablement du genre “oui, nous avons examiné la question, nous ne l’avons pas résolue, le problème vient de votre côté mais vous ne partagerez aucun exemple de spam et nous ne vous dirons pas quel est le problème”… C’est-à-dire, s’il y a un problème.

J’ai quand même utilisé ce formulaire de contact. Il faut deux semaines pour que l’e-mail réponde, a indiqué le formulaire à la fin. Cela rend l’e-mail pratiquement peu fiable et trop fastidieux pour travailler avec.

Ce n’est pas seulement mon expérience.

Beaucoup d’autres personnes ont écrit sur des expériences similaires.

Ces manigances s’ajoutent à toutes les difficultés techniques de l’auto-hébergement de votre serveur de messagerie.

Pourriez-vous s’il vous plaît rendre l’e-mail facultatif ?

  • Lors de l’inscription avec une adresse e-mail : la récupération du mot de passe sera possible.
  • Lors de l’inscription sans adresse e-mail : la récupération du mot de passe sera impossible.
  • Si autorisé par l’administrateur du site (paramètre facultatif), avertir l’utilisateur mais autoriser l’inscription sans adresse e-mail.
  • Seulement nom d’utilisateur + mot de passe.

Sujets similaires :

1 « J'aime »

Une solution rapide et facile consiste à utiliser un autre système d’authentification à l’aide de Discourse Connect.

Mon estimation précédente de la difficulté de créer un système sans e-mail est complètement fausse. L’utilisation d’un autre identifiant avec un nom d’hôte not-email.invalid pour ces e-mails devrait être réalisable. Je pense que le plugin Sign-In with Ethereum pourrait faire ce que vous voulez, si vous êtes prêt à obliger les gens à utiliser Ethereum, mais quelque chose de similaire pourrait également fonctionner. Vous avez besoin d’un moyen d’établir une identité.

Vous avez besoin d’un moyen d’établir votre identité.

Juste nom d’utilisateur + mot de passe.

Alors n’importe qui (ou n’importe quel bot) sur tout Internet peut venir sur votre forum et créer un nombre infini de comptes en inventant un nom d’utilisateur et un mot de passe ?

Oui.

D’après mon expérience avec diverses applications web, les robots spammeurs n’ont pas beaucoup de difficulté à créer des adresses e-mail Gmail et autres. Sur mon site, nous n’excluons pas non plus les adresses e-mail temporaires jetables. Il existe également d’autres logiciels de forum / forums qui autorisent l’inscription sans adresse e-mail (ou sans adresse e-mail valide) et cela n’a pas non plus causé de problèmes que j’ai pu constater. Je ne vois donc pas les adresses e-mail comme un obstacle majeur pour éviter un déluge de comptes de bots / attaques DOS.

Mais je comprends votre point de vue. Permettre aux utilisateurs de s’inscrire sans adresse e-mail pourrait entraîner de nombreux problèmes ultérieurs. Qu’en est-il si un énorme déluge d’attaques de bots et/ou d’attaques DOS se produit, créant un nombre fou de comptes de forum ?

Dans ce cas, des mesures de prévention anti-spam seraient nécessaires. Mais celles-ci ne seraient pas spécifiques aux instances de forum où l’e-mail est facultatif par rapport à celles où l’e-mail est obligatoire.

C’est parce que les spammeurs ont également aujourd’hui accès à de nombreuses adresses e-mail créées ou piratées. Ils pourraient également utiliser des fournisseurs d’e-mail temporaires. Ou acheter/voler un nom de domaine et configurer leur propre serveur de messagerie dans le seul but de mettre en place des forums de spam.

Les mêmes questions se poseraient pour les utilisateurs utilisant ou n’utilisant pas d’e-mail. Pour le bien de cette discussion, des questions théoriques.

  • Comment afficher tous les comptes créés depuis X jours, qui se sont connectés moins de X minutes, qui ont 0 message ? Probablement des comptes de bots. Je veux les trouver et les supprimer tous.
  • Comment ajouter une question personnalisée / un puzzle / un captcha / autre avant d’accepter une inscription ?
  • Le panneau d’administration pourrait-il avoir un bouton simple permettant aux administrateurs d’approuver/désapprouver facilement les nouvelles inscriptions, capable de gérer le spam d’enregistrement de masse ?

Il semble que Google ait trouvé une solution intéressante pour cela en utilisant des codes QR et Bluetooth :

1 « J'aime »

Connexe : Users logging with SSO, without email address

1 « J'aime »

Maintenant que les passkeys sont si répandues, de nombreux services proposent une inscription sans mot de passe où vous n’avez jamais à créer de mot de passe. Avoir un mot de passe contourne les avantages de sécurité des passkeys. De même, utiliser l’e-mail comme méthode de récupération signifie que la sécurité de tous vos comptes dépend de la sécurité de votre compte de messagerie. Exiger des mots de passe/e-mails est mauvais pour la sécurité et la confidentialité des utilisateurs, sans parler de la facilité avec laquelle il est possible de créer de nouveaux comptes de messagerie. D’après mon expérience, l’exigence d’un e-mail n’empêche absolument pas les bots de spammer votre forum. L’une des principales raisons pour lesquelles les services ont historiquement exigé un e-mail est de pouvoir récupérer votre compte en cas d’oubli de votre mot de passe, mais avec les passkeys, elles sont stockées dans votre gestionnaire de mots de passe et synchronisées sur tous les appareils. Vous pouvez même ajouter plusieurs passkeys à un compte, ce qui élimine presque complètement le problème des personnes qui oublient leur mot de passe. Voici quelques exemples de sites qui implémentent l’inscription sans mot de passe :

https://app.uninbox.com/ Celui-ci est particulièrement bon je pense car il ne nécessite pas d’e-mail
https://www.kayak.com/

1 « J'aime »

S’il vous plaît, expliquez-moi cela comme si j’avais 80 ans.

Target propose l’inscription en utilisant uniquement une clé d’accès (avec l’option e-mail/mot de passe) et Discourse oblige à utiliser un e-mail ou un e-mail via SSO. Kayak (je n’aime vraiment pas ce nom de domaine, d’ailleurs :smirking_face:) utilise uniquement Google SSO, et Discourse le propose déjà.

La question ouverte est donc maintenant une option similaire à celle de Target, car l’option Kayak est déjà là (je ne limiterais pas l’inscription uniquement aux utilisateurs de Google, mais ce n’est que mon avis).

Que se passe-t-il lorsqu’un utilisateur de Target passe par exemple de l’iPhone à Android ?

Kayak vous permet en fait de vous inscrire avec une clé d’accès si vous entrez votre adresse e-mail. Malheureusement, l’e-mail est toujours requis.

Vos clés d’accès devraient être synchronisées avec votre gestionnaire de mots de passe afin d’être disponibles. Vous pouvez également ajouter plusieurs clés d’accès à un compte afin de pouvoir en créer une nouvelle avec le nouveau téléphone également. Actuellement, ils travaillent à les rendre exportables afin que vous puissiez passer plus facilement d’un gestionnaire de mots de passe à un autre.

1 « J'aime »