Question:
Est-ce une bonne ou une mauvaise pratique d'autoriser un utilisateur à changer son nom d'utilisateur?
Jeff Y
2017-12-20 03:02:51 UTC
view on stackexchange narkive permalink

J'ai cherché partout en ligne ainsi que sur ce site pour essayer de trouver plus d'informations concernant la sécurité de celui-ci, mais je n'ai rien trouvé. Dans mon cas particulier, le produit est un site Web, mais je pense que cette question s'applique à tout logiciel qui héberge un grand nombre d'utilisateurs.

Je sais qu'il existe de nombreux sites Web qui vous permettent de changer votre nom d'utilisateur , mais en même temps, il y en a beaucoup qui ne le permettent pas. Je suis sûr que certains qui ne le permettent pas peuvent être juste pour la simplicité, mais peut-être aussi pour la sécurité.

Ma question est exactement comme le titre le demande:

De d'un point de vue de sécurité, diriez-vous que c'est une bonne ou une mauvaise pratique d'autoriser des individus à changer leur nom d'utilisateur?

Je ne vois actuellement aucune raison de ne pas l'autoriser, étant donné que cela est fait correctement ( c'est-à-dire rendre impossible la duplication des noms d'utilisateur, exiger la saisie du mot de passe actuel pour s'assurer que les exigences de mot de passe sont toujours remplies en ce qui concerne ne pas contenir de nom d'utilisateur, etc.), mais je ne peux pas m'empêcher de penser qu'il me manque quelque chose. Je sais qu'il y a des avantages du point de vue de l'utilisateur à lui permettre de changer son nom d'utilisateur. Un exemple serait s'ils définissent leur nom d'utilisateur sur leur adresse e-mail et décident d'utiliser une autre adresse e-mail plus tard. Au lieu de cela, je suis curieux des avantages par rapport aux risques concernant la sécurité de l'application et du processus de connexion si vous leur permettez de changer leur nom d'utilisateur.

MODIFIER:

Certaines réponses soulèvent de bons points concernant les noms affichés publiquement, mais pour clarifier, la question ne concerne aucun nom d'affichage public, mais plutôt le nom d'utilisateur unique utilisé pour se connecter.

Question interessante.Je ne pense pas que vous deviez l'interdire pour vous protéger des utilisateurs, mais vous voudrez peut-être le limiter pour protéger les utilisateurs les uns contre les autres.Changer le nom d'utilisateur peut être utile si vous essayez d'arnaquer des personnes sur le site.
Le marché du jeu Steam a beaucoup de gens qui font exactement cela.Les fraudeurs changent leur nom d'utilisateur et leur image pour faire semblant d'être quelqu'un que vous connaissez et vous demander de leur échanger vos articles.Steam a une fonctionnalité qui vous permet de voir les noms récemment utilisés par chaque utilisateur, ce qui est un moyen pour un utilisateur de s'empêcher de se faire arnaquer par une telle astuce.Vous pouvez également afficher des détails tels que depuis combien de temps ils sont amis avec l'utilisateur ou quand le nom d'utilisateur a été modifié pour la dernière fois pour éviter ce type d'escroquerie.
Les sites Stack Exchange vous permettent non seulement de modifier votre nom d'utilisateur, mais il n'est même pas nécessaire qu'il soit unique.
@Michael C'est génial, n'est-ce pas?
Vous posez des questions sur la sécurité d'utilisateur à serveur (sans effet) ou sur la sécurité d'utilisateur à utilisateur?
La question est étiquetée avec "informations d'identification" @Michael donc je ne considère pas qu'elle concerne uniquement le nom d'affichage.Vous deux Michaels ne vous authentifiez pas auprès de SE avec le même "nom d'utilisateur".
Je pense que de nos jours, si le nom d'utilisateur est visible publiquement et que d'autres doivent l'utiliser pour s'adresser à quelqu'un, il y a une option pour le modifier. Si son seul but est de se connecter à quelqu'un d'autre que par e-mail, cela peut être une constante.
Vous pourriez avoir un site qui maintient les noms d'utilisateur de base statiques, mais permet aux utilisateurs de changer leur nom d'affichage.
L'une des applications que je maintiens est un peu un cauchemar pour changer de nom d'utilisateur car c'est leur adresse e-mail - et cet e-mail est lié à quelques bases de données héritées, il faudrait donc le vérifier et le réinitialiser à quelques endroits avec tout le potentiel.effets!Il est donc plus facile de l'interdire ...
La seule raison à laquelle je pense pour empêcher les utilisateurs de changer de nom d'utilisateur est [ce genre de situation] (http://i0.kym-cdn.com/photos/images/newsfeed/001/042/556/168.jpg).Selon le type de service, vous voudrez peut-être prendre des mesures pour l'empêcher, mais dans l'ensemble, ce ne serait pas un gros problème la plupart du temps.
Treize réponses:
fluffy
2017-12-20 10:13:56 UTC
view on stackexchange narkive permalink

De nombreuses personnes ont examiné les raisons de ne pas autoriser les changements de nom du point de vue de la sécurité et de la communauté. Cependant, il existe de nombreuses raisons légitimes d'autoriser les changements de nom d'utilisateur, même si le nom d'utilisateur est distinct du nom d'affichage , par exemple:

  • Quelqu'un a changé sa vraie vie nom ou le nom sous lequel ils préféreraient être appelés, en raison de leur mariage, de situations familiales, d'échappatoire au harcèlement / harcèlement / etc., et ainsi de suite

    Même s'il s'agit simplement d'un nom d'utilisateur, avoir utiliser un ancien nom qui porte un traumatisme peut aggraver le traumatisme. De plus, il est tout à fait possible pour un harceleur / harceleur de connaître les identifiants de connexion de sa cible, et le fait de pouvoir changer les deux parties de l'identifiant réduit la surface d'attaque; De plus, surveiller les tentatives de connexion à un nom d'utilisateur abandonné permet de monter une action en justice contre un mauvais agent.

  • Les gens ont décidé de passer à une transition de genre

    Être forcé d'utiliser son «nom mort», même dans le contexte d'un nom d'utilisateur privé, est également très traumatisant. (Je peux parler d'expérience personnelle sur celui-ci.)

  • Les gens ont un nom d'utilisateur qui, selon eux, ne leur convient plus pour une raison quelconque

    Cela a moins d'une implication pour les noms d'utilisateurs internes, mais il vaut toujours mieux se tromper du côté de la gentillesse, à mon avis.

Tout cela est important pour le confort de l'utilisateur, et dans de nombreux cas, les gens créeraient probablement un nouveau compte avec le nouveau nom de toute façon, alors autant le soutenir.

Éviter l'ingénierie sociale est certainement important, mais il existe des approches qui aident à atténuer ce problème, telles que diverses formes de vérification (comme on le voit sur plusieurs réseaux sociaux), la cryptographie à clé publique et les indicateurs de profil ("nom modifié pour la dernière fois il y a N mois) ; nom changé K fois "). Et, comme cette question a été modifiée pour concerner les noms d'utilisateurs internes et non les noms d'affichage publics, ces préoccupations ne sont même pas pertinentes pour la discussion.

De plus, gardez à l'esprit que de nombreuses surfaces d'attaque fournies par quelqu'un changer son nom d'utilisateur est également présent pour quelqu'un qui crée simplement un nouveau compte, et si une option de changement de nom d'utilisateur n'est pas disponible, l'utilisateur créera probablement un nouveau compte - éventuellement en utilisant le même mot de passe que l'ancien et en faisant des choses qui pourraient conduire à sécurité compromise.

C'est une bonne idée de conserver une piste d'audit des changements de nom d'utilisateur et d'interdire la création de nouveaux comptes utilisant un nom d'utilisateur précédemment utilisé (au moins si le nom d'utilisateur a été utilisé pour la dernière fois dans le passé, par exemple, année), mais il n'y a aucune raison pour que le nom d'utilisateur soit jamais la clé primaire utilisée pour associer des données au compte d'utilisateur en premier lieu, car il y a des raisons légitimes pour un changement de nom d'utilisateur et tous les enregistrements de compte doivent être normalisés à un abstr agissent en premier lieu sur un identifiant interne uniquement.

La nature de la communauté a aussi une certaine influence.Si vos noms d'utilisateur sont essentiellement privés (comme dans Gmail, ou la plupart des services non sociaux qui nécessitent une inscription), autoriser des modifications arbitraires n'est pas controversé.Cependant, si les noms d'utilisateur sont à la fois publics et pertinents (comme sur un forum de discussion, un blog, un site de journalisme ou même un SO), alors autoriser des changements de nom d'utilisateur arbitraires pose plus de problèmes qu'il n'en résout et facilite simplement le troll et l'évasion de la responsabilité.
Raison no.3 s'appliquent à moi.Mon nom d'utilisateur, mon compte de messagerie, mon compte LoL, etc. est «kukis13».C'est un nom d'utilisateur parfaitement bon lorsque je l'utilise dans mon pays d'origine, mais depuis que j'ai déménagé en Suède, il a une signification très désagréable.J'adorerais donc le changer mais la plupart des services ne le permettent pas
@aroth Je me souviens d'un forum, dont j'étais membre, qui permettait les changements de nom.Le nouveau nom / image serait essentiellement appliqué rétroactivement aux anciens messages, car l'ouverture du message ne ferait que charger le nom / l'image actuelle de l'auteur du message.Cela pourrait empêcher une certaine fraude en matière de responsabilité.
Raison n ° 4 sur laquelle le site Web sur lequel le compte est enregistré a un chapeau caché qui ne se déclenche que lorsque vous modifiez votre nom d'utilisateur / d'affichage.
Bien que cette réponse ait actuellement le plus de votes et ait certainement soulevé de bons points sur le fait de permettre à une personne de changer son nom d'utilisateur, elle ne répond toujours pas à la question réelle de "Du point de vue de la sécurité, diriez-vous que c'est bon ou mauvaispratique pour permettre aux individus de changer leur nom d'utilisateur? "Pensez par exemple à un site Web bancaire ou à tout autre site où le nom d'utilisateur est privé et il peut ne pas y avoir de nom d'affichage public.
@aroth - Au moins les mods SE peuvent accéder à un historique d'audit des changements de nom, et les utilisateurs réguliers peuvent généralement le résoudre avec un minimum de fouille dans les conversations précédentes ou le profil de l'utilisateur incriminé, ce qui rend l'effet sur la responsabilité (ou l'évasion de celle-ci) un inconvénient assez mineur.De plus, aucun changement de nom ne supprimera les anciens drapeaux ou empêchera les scripts automatiques d'interdire à quelqu'un de demander ou de répondre.
@MichaelRichardson c'est sûrement le cas ici, sauf @-mentions.C'est un peu déroutant quand vous réalisez que le message mentionnant `@Alice` apparaît maintenant comme écrit par` Bob`, mais c'est un problème UX mineur.
"toute surface d'attaque fournie par quelqu'un qui change son nom d'utilisateur est également présente pour quelqu'un qui crée simplement un nouveau compte" - pas tout à fait, car un nouveau compte ne vient pas avec un historique établi.Par exemple, il est probablement plus facile d'emprunter l'identité d'un utilisateur Stack Exchange si votre représentant a le même nombre de chiffres que le leur.
Une autre raison, l'utilisation du courrier électronique comme nom d'utilisateur a été assez populaire.L'utilisation de l'adresse e-mail de mon collège n'a finalement pas été une bonne idée pour certains sites car je ne peux plus y accéder et tous les sites qui l'utilisent comme nom d'utilisateur posent des problèmes lorsqu'ils doivent m'envoyer un e-mail.
J'ai mis à jour ma réponse en ce qui concerne la question dont la portée a été réduite, ainsi qu'en réponse à certains des bons commentaires ici.
@fluffy J'ai posé cette question sur le site de sécurité de l'information et j'ai pensé clarifier mes intentions de la question, en particulier lorsque la question originale se termine par "Je sais qu'il y a des avantages du point de vue de l'utilisateur ... Au lieu de cela, je suis curieux des avantages par rapport àrisques concernant * la sécurité de l'application et le processus de connexion * si vous leur permettez de modifier leur nom d'utilisateur. "Je me concentrais probablement trop sur la première moitié de votre question, cependant, où vous vous êtes concentré sur les points de confort de l'utilisateur, mais en effet vers la fin de votre réponse, vous avez donné des réponses concernant la sécurité de l'application.
K.B.
2017-12-20 03:39:04 UTC
view on stackexchange narkive permalink

Je dirais tant qu'ils ne sont pas en mesure de modifier leur identifiant unique. C'est à dire. ils peuvent changer le nom sous lequel ils s'affichent, mais ce nom est lié à un numéro d'identification d'utilisateur immuable (cela rendra vos DBA plus heureux également). Je m'assurerais également que l'utilisateur ne puisse pas changer son nom en l'ancien nom d'un autre utilisateur (pour aider à atténuer le potentiel d'escroquerie dont parle Anders). Vous envisagez donc de stocker tous les noms d'un utilisateur à un moment donné.

Il vaudrait peut-être mieux avoir une demande de changement de nom d'utilisateur, pour gérer les cas légitimes (comme le cas des e-mails), et ne pas avoir de méthode automatisable pour le faire.

J'ai déjà un champ UserId, clé primaire qui ne peut pas être modifiée.Nous utilisons actuellement votre suggestion concernant les personnes qui nous contactent pour demander une modification, mais elle n'est pas aussi évolutive en raison du travail manuel et nous oblige à demander des réponses à leurs questions de sécurité pour vérification.C'est ce qui m'a amené à penser à ajouter cette fonctionnalité à la page de profil de notre site ou à ne pas l'autoriser du tout, ainsi qu'à cette question.
Peut-être qu'un filtre Bloom serait approprié pour stocker les noms d'utilisateur précédents?Cela aurait l'avantage supplémentaire que les données des utilisateurs précédents ne sont pas réellement stockées mais peuvent être recherchées.
Fait intéressant, Twitter permet de changer le nom d'utilisateur (pas seulement "nom" mais aussi @username) à tout moment, et permet de changer à un nom d'utilisateur précédemment possédé par quelqu'un d'autre - sans même un délai (c'est-à-dire en quelques secondes après avoir changé son nom d'utilisateur).
Les utilisateurs de Twitter @fjw ont des identifiants numériques.Le nom d'utilisateur n'est que cosmétique.Il n'est donc pas si surprenant que les noms d'utilisateurs puissent être réutilisés.
C'est ainsi que Microsoft l'a fait avec Windows.Vous pouvez changer votre nom d'utilisateur, pour vous connecter, etc., mais il est toujours lié au répertoire d'origine `c: \ user \
@solomonoffs-secret Malheureusement, lorsque l'utilisateur de Twitter change de nom, tout @ mentionne une rupture.Et maintenant, vos réponses semi-cachées à cette personne deviennent visibles comme des tweets normaux.
@Ark-Kun avez-vous essayé de changer le nom d'utilisateur Twitter?Les réponses existantes ne sont pas interrompues et continuent d'être liées au message auquel elles répondaient.Bien sûr, toute personne créant un nouvel @-mention devra utiliser le nouveau nom d'utilisateur, mais les réponses existantes faites aux personnes avec des noms d'utilisateur précédents sont toujours liées correctement en tant que réponses.Pour clarifier techniquement: les réponses sont liées au niveau du message et ne seront pas interrompues.@-mentions eux-mêmes sont liés au niveau du nom d'utilisateur.Twitter fait une distinction maintenant (pas toujours).
@fjw Mon expérience est différente.J'ai écrit de nombreuses réponses aux gens.Ces tweets n'apparaissent pas dans mon flux de tweets public (uniquement dans "Tweets et réponses").Récemment, j'ai regardé mon flux et j'ai vu qu'il était jonché de nombreuses réponses qui sont maintenant affichées dans mon flux principal.De plus, les @-mentions de départ ne sont plus des liens - ils sont traités comme du texte brut.Je ne suis pas sûr de ce qui s'est passé.Soit la personne a changé son pseudonyme, soit elle a utilisé des listes noires de masse et bloqué tout le monde, moi y compris.
Mike Ounsworth
2017-12-20 05:53:48 UTC
view on stackexchange narkive permalink

Comme mentionné, permettre aux utilisateurs de changer facilement de nom d'utilisateur (appelons-le "nom d'affichage" pour lever l'ambiguïté) permet aux utilisateurs d'éviter plus facilement les conséquences du harcèlement ou de l'arnaque d'autres utilisateurs. Si votre site a un aspect social, demandez peut-être si les interdictions, les blocages, les rapports, les historiques de chat, etc. passeront par un changement de nom d'utilisateur (c'est-à-dire qu'un utilisateur sera conscient qu'il parle au même compte, même si le nom a changé? ).

Un autre point à considérer est l'anonymat ou les problèmes de confidentialité. Il est assez fréquent que quelqu'un crée un compte avec son vrai nom et regrette pour une raison quelconque d'y attacher sa véritable identité. Parfois, c'est parce qu'ils ont été pris au piège de l'intimidation, mais c'est souvent pour des raisons légitimes, comme le partage excessif de détails personnels de leur vie, ou ils sont victimes d'intimidation. Cette question récente me vient à l'esprit comme un exemple différent:

J'ai accidentellement entré le mot de passe d'un site Web comme nom d'utilisateur pour un autre site Web

Dans ce cas, l'envoi un ticket de service à examiner par un humain ou autoriser un nombre limité de changements de nom de compte semble être une approche raisonnable.

maaartinus
2017-12-20 10:02:17 UTC
view on stackexchange narkive permalink

Nous utilisons actuellement votre suggestion concernant les personnes qui nous contactent pour demander une modification, mais elle n'est pas aussi évolutive en raison du travail manuel et nous oblige à demander des réponses à leurs questions de sécurité pour vérification.

C'est définitivement faux. Non seulement vous devez le faire manuellement, mais vous êtes obligé de donner des réponses de sécurité à tous ceux qui traitent de telles demandes.

Si vous voulez garder le contrôle, alors semi-automatisez-le: laissez l'utilisateur faire tout le travail préparatoire, c'est-à-dire, remplissez le nouveau nom, écrivez leur raison (si vous vous en souciez) et répondez à la question de sécurité. Désormais, les responsables du service d'assistance n'ont plus qu'à accepter ou refuser la demande.


De nombreuses raisons pour et contre l'autorisation des changements de nom d'utilisateur ont été données dans les autres réponses. Notez simplement que vous pouvez opter pour la voie médiane: autoriser un seul changement automatisé, par exemple, une fois par an. Ceci est suffisamment généreux pour traiter 99% des demandes mais suffisamment limitatif pour éviter la plupart des abus.

Oui, mais ce n'était pas mon idée et c'est comme ça que les choses se sont passées avant moi.C'est en partie la raison de cette question en premier lieu;pour que je puisse l'améliorer :)
Un seul changement est une limite arbitraire et il y aura toujours des gens qui auront besoin de plus de changements ou qui ne le comprendront pas.Et d'un autre côté, il existe même des sites qui vous permettent de changer une fois votre date de naissance.Juste au cas où vous auriez eu une faute de frappe lors de votre inscription?Je trouverais plus important d'avoir un changement pour le supprimer complètement si vous le souhaitez.
@allo Bien sûr, il y aura toujours des cas exceptionnels.Mais cela ne rend pas cette limite arbitraire invalide.Si cela vous évite un peu de travail manuel, alors c'est utile.Je suppose que cette limite pourrait faire économiser 90 à 99%.Peut-être qu'une limite différente fonctionnerait mieux ... essayez-la et collectez quelques chiffres.+++ Suppression de compte: bien sûr, mais ce n'est pas le sujet ici.
Rawrskyes
2017-12-22 05:33:43 UTC
view on stackexchange narkive permalink

Je suis un peu surpris que cela n'ait pas été soulevé. Mais je suppose que la raison pour laquelle de nombreux sites ne vous permettent pas de changer votre nom d'utilisateur est que cela pose un problème si les informations du compte d'un utilisateur sont volées, car l'attaquant peut maintenant tout changer complètement sur le compte.

Il Il est sans aucun doute plus complexe de tenter de récupérer le compte d'un individu où ses coordonnées ont été volées et où tout a été entièrement changé. Le fait de disposer de l'information commune qui ne changera jamais permet à un utilisateur de se référer plus facilement à son compte s'il y perdait l'accès.

Je pense que certaines des autres réponses ici ont fourni de meilleures solutions , mais je ne suis pas sûr que beaucoup d'entre eux aient abordé ce que vous demandiez réellement, à savoir les implications de sécurité de l'autorisation d'un changement de nom d'utilisateur.

Il existe cependant des solutions à cela.D'une part, les notifications par e-mail fourniraient une forme de garantie que l'utilisateur est légitime.J'ai vu de nombreux sites qui ont "oublié votre nom d'utilisateur?"les options qui prennent une adresse e-mail (vous pouvez garder une trace des anciennes adresses e-mail afin que les modifier ne vous blessent pas).Et franchement, je m'attendrais à ce que le support client (qui est généralement nécessaire si quelqu'un est tellement déterminé à pirater votre compte) devrait pouvoir rechercher votre compte à l'aide de son ancien nom d'utilisateur.Cela devrait être stocké pour des mesures de responsabilité, de toute façon (empêchant l'abus de la fonctionnalité).
Dan Landberg
2017-12-20 03:35:44 UTC
view on stackexchange narkive permalink

Je dirais que vous feriez mieux de ne pas autoriser les utilisateurs à changer leur nom d'utilisateur, mais cela dépend vraiment de votre modèle de menace. Voici les avantages pour & de l'autoriser:

Pros :

  • Si les informations d'identification d'un utilisateur sont compromises sur un autre site, permettre aux utilisateurs de modifier leur nom d'utilisateur peut le rendre plus difficile de faire correspondre les informations d'identification du site compromis à votre site, ce qui rend plus difficile l'exécution d'une attaque de bourrage d'informations d'identification. Notez que l'utilisateur qui change son mot de passe atteint le même objectif.

Inconvénients:

  • Comme mentionné ci-dessus, il est plus facile pour les utilisateurs d'effectuer des activités sociales l'ingénierie d'attaques les unes contre les autres sur votre site.
  • Vous avez ajouté de la complexité à votre site, ce qui à son tour augmente le nombre de bogues de sécurité potentiels. Par exemple, si vous recherchez les doublons, vous avez maintenant une vulnérabilité d'énumération d'utilisateurs.
Curieux de savoir comment l'énumération est un problème s'il s'agit d'un nom d'utilisateur choisi par l'utilisateur par opposition à une adresse e-mail.Je suppose que les utilisateurs qui choisissent d'utiliser leurs adresses e-mail pourraient compter ...
C'était juste un exemple.Le point que j'essayais de faire valoir est que plus vos processus / code sont complexes, plus vous risquez de faire des erreurs.Cela pourrait tout aussi bien être une vulnérabilité d'injection SQL dans la vérification des doublons, ou une cible pour CSRF, ou tout autre bogue.
Vous n'avez pas à vérifier les doublons lors de la création du compte, point final?Vous pouvez réduire l'énumération des utilisateurs (si c'est même un souci) avec des délais forcés, mais il y a une raison pour laquelle la plupart des sites traitent les noms d'utilisateurs comme des informations publiques.Je ne suis pas sûr de comprendre comment il est plus facile de faire des attaques d'ingénierie sociale si vous pouvez modifier les noms d'utilisateur.Je suppose que vous pensez à des gens prenant l'ancien nom de quelqu'un?Cela devrait être tout à fait évitable, cependant, en traitant ce nom comme pris (peut être un alias ou traité comme un compte supprimé).
Christopher
2017-12-20 07:47:36 UTC
view on stackexchange narkive permalink

Vous équilibrez essentiellement deux problèmes concurrents, avec un troisième facteur. Le premier est la sécurité des utilisateurs de votre site, changer un nom d'utilisateur est un moyen facile de tromper d'autres personnes afin de les arnaquer. La seconde est que changer un nom d'utilisateur est un moyen facile de tromper d'autres personnes afin de s'éloigner d'eux.

Les personnes harcelées aimeraient plutôt changer leur nom d'utilisateur car c'est un sursis immédiat. Les gens qui harcèlent les autres aimeraient le changer comme vous pouvez le faire par les défenses initiales. Et l'autre facteur est que plus de pièces mobiles signifie plus de choses à frapper signifie moins de sécurité.

Votre premier plan d'action devrait être de décider de quelle manière vous vous penchez ici. Vous concentrez-vous sur la prévention des fraudeurs ou essayez-vous de rendre l'environnement aussi sûr que possible? Garder à l'esprit que créer un environnement sûr peut signifier ne pas automatiser un changement, et il existe d'autres raisons de changer un nom d'utilisateur, à la fois bonnes et mauvaises. C'est à vous de le découvrir en fonction de ce que vous savez de votre site. La deuxième étape serait de déterminer si vous pouvez ou non effectuer une implantation sécurisée pour cela.

À ce stade, c'est un organigramme. Vous préférez l'automatiser, mais vous ne pouvez pas le faire en toute sécurité? Ne fais pas ça. Vous avez un problème avec les escrocs et autres attaques d'ingénierie sociale? Ne fais pas ça. Vous voulez faciliter le changement et pouvez le mettre en œuvre en toute sécurité? Faites-le.

Je note que, comme d'autres l'ont suggéré, garder une trace des noms d'utilisateur est une bonne idée même s'ils sont cachés et disponibles uniquement pour vous (idéalement cachés si les changements sont pour des raisons de sécurité) et augmenter le nom d'utilisateur le contrôle de disponibilité pour durer environ trois noms d'utilisateur sur le site serait utile (et quelque chose d'autre à sécuriser).

Enfin, vous avez mentionné l'évolutivité. À mesure que vous évoluez, il devient plus facile (lire moins cher) d'automatiser les choses que vous ne pouvez pas faire pour des raisons de sécurité et de vous défendre contre les attaques d'une autre manière, voir Twitter pour un exemple de cela. Si vous atteignez ce point, automatisez-vous, le plus tôt sera le mieux.

Si vous voulez le garder automatisé mais que vous voulez limiter les abus, et que votre site dispose d'une sorte de système de «karma», vous pouvez choisir de n'autoriser les changements de nom que pour les utilisateurs avec X karma ou plus, et peut-être même faire en sorte que cela coûte du karma..De cette façon, les intimidateurs et autres (qui seront probablement mal notés) ne peuvent pas facilement changer leur nom pour échapper aux défenses et même s'ils le peuvent, ils ne pourront pas le faire régulièrement en raison du karma du changement, mais ceux-cichercher un sursis ou changer pour d'autres raisons devrait avoir assez de karma pour pouvoir changer.
Ivan
2017-12-21 05:28:51 UTC
view on stackexchange narkive permalink

D'après mon expérience, autoriser un changement de nom d'utilisateur là où il n'était pas prévu à l'origine rend l'audit / la journalisation légèrement plus difficile, en particulier dans le cas inévitable où un développeur d'il y a des années a décidé d'ajouter le nom d'utilisateur mais pas la clé primaire à chacun. entrée de journal.

Cela arrive, en particulier lorsque vous embauchez des développeurs amateurs / externalisés - vos journaux deviendront des déchets que vous devrez reconstruire de manière légale en croisant manuellement les dates si vos entrées de journal ne correspondent pas le nom d'utilisateur de la clé primaire d'origine au moment de l'activité.

Donc, avant d'activer cela, je vous recommande de consulter toutes les solutions de journalisation que vous pourriez avoir et de vous assurer qu'elles enregistrent le pk à côté / au lieu du nom d'utilisateur afin que vous puissiez garder une trace de l'identité à travers les changements de nom d'utilisateur.

cedbeu
2017-12-21 13:24:43 UTC
view on stackexchange narkive permalink

À mon avis, c'est plus une question de stratégie ou d'architecture que de sécurité… Tant que vous vous assurez de conserver un identifiant unique en interne pour chaque utilisateur (par exemple, un identifiant unique de base de données, qui ne changera jamais, mais qui n'a pas besoin d'être affiché n'importe où), et un historique des modifications par utilisateur, les utilisateurs devraient pouvoir modifier leurs identifiants ou noms d'utilisateur. Si vous souhaitez afficher l'historique des modifications sur la page de l'utilisateur dépend du but et de l'utilisation de votre logiciel.

Personnellement, je trouve toujours très ennuyeux les services qui imposent ce genre de restrictions arbitraires ("vous ne pouvez pas changez votre nom d'utilisateur "," vous ne pouvez pas changer votre connexion "," vous ne pouvez pas réutiliser les mots de passe que vous avez déjà utilisés dans le passé ", etc.).

Cependant, nous pouvons faire une différence entre 3 cas ( plus le général):

  1. logiciel hors ligne

  2. service intranet

  3. service Internet

  4. résumé

1 - logiciel hors ligne

Dans le cas d'un logiciel hors ligne, les utilisateurs doivent toujours pouvoir modifier leur connexion. Tout est local ici donc il n'y a aucune raison d'interdire tout changement.

2 - service intranet

Dans le cas d'un service intranet, nous nous attendons très probablement à ce que les utilisateurs disposent d'un moyen simple de contacter directement un administrateur.

Peut-être le moyen le plus sûr de changer de connexion pourrait alors être une procédure manuelle. Il est également probablement possible de garantir un moyen sûr d'automatiser la procédure.

Mais, à mon humble avis, les utilisateurs devraient pouvoir modifier leur connexion et la connexion devrait être totalement indépendante de l'ID unique de l'utilisateur.

3 - service Internet

Dans le cas d'un service en ligne, je pense que la connexion doit toujours être l'adresse e-mail de l'utilisateur (ou, peut-être, dans certains cas, un numéro de téléphone portable, cependant, dès qu'il s'agit d'un service Internet, je m'attendrais à ce que mon utilisateur ait une adresse e-mail et je ne recommanderais pas l'utilisation d'un numéro de téléphone).

Dans ce cas, bien sûr, les utilisateurs devraient pouvoir modifier leur adresse e-mail quand ils le souhaitent et, par conséquent, leur identifiant (c'est-à-dire leur adresse e-mail).

Bien sûr, dans ce cas, vous devez vous assurer d'avoir une procédure appropriée, pour vous assurer que lorsque la demande de modification se produit, il existe un mécanisme qui permet de confirmer que le demandeur est le propriétaire du compte (email de vérification avec lien de confirmation qui a une date d'expiration, disons 24h mais cela dépend de votre cas).

4 - résumé

  • les utilisateurs doivent toujours pouvoir modifier leur connexion
  • l'identifiant unique de l'utilisateur doit toujours être indépendant de la connexion
  • dans le cas d'un service Internet, éviter "login username", préférer "email address login", avec une procédure de validation / confirmation
  • dans tous les cas, il peut être une bonne idée de garder une trace de l'historique des modifications… si vous l'affichez sur un "profil utilisateur" ou non dépend de votre cas d'utilisation spécifique
Tom
2017-12-22 07:19:06 UTC
view on stackexchange narkive permalink

Je ne vois aucune réponse vérifiant la question la plus importante:

Le nom d'utilisateur est-il secret sur votre site ou non?

Si le nom d'utilisateur est affiché sur un utilisateur page de profil, ou en tant qu'auteur sur les publications du forum ou est consultable dans une liste de membres, il ne comporte aucune fonctionnalité de sécurité. Par conséquent, le changer ou non n'a aucune signification pour la sécurité.

Si le nom d'utilisateur est un secret, par exemple vous avez un nom d'affichage différent, ou affichez le nom complet de l'utilisateur, mais utilisez un nom court ou un alias à des fins de connexion - si le nom d'utilisateur est un secret, cela affecte la sécurité car un attaquant doit connaître à la fois le nom d'utilisateur et le mot de passe pour accéder à un compte.

Cependant, comme les utilisateurs ont tendance à réutiliser les noms d'utilisateur et ne considèrent généralement pas les noms d'utilisateur comme secrets de la même manière qu'ils le font avec les mots de passe, le nom d'utilisateur est un faible secret. Cela n'a pas non plus d'importance dans de nombreuses attaques (MtM, keyloggers, phishing, hacks DB, etc. etc.)

Donc, même si votre nom d'utilisateur est un secret, les avantages en réponses) l'emportent largement sur les considérations de sécurité.

Chris H
2017-12-21 14:55:02 UTC
view on stackexchange narkive permalink

Si vous autorisez les utilisateurs à utiliser des adresses e-mail comme noms de connexion, vous devez leur permettre de modifier leur identifiant:

  • Si quelqu'un quitte une organisation, il risque de perdre immédiatement l'accès à cette adresse et la nouvelle adresse peut être attribuée à quelqu'un d'autre tout aussi rapidement . (J'ai dû changer de FAI sans préavis quand ils ont réalisé qu'ils ne pouvaient pas connecter ma nouvelle maison après tout; les adresses e-mail sont devenues disponibles pour les autres le même jour). Même si vous n'utilisez l'adresse que comme nom de connexion et jamais comme pour les e-mails réels, il s'agit d'un vecteur important et inutile d'attaques d'ingénierie sociale.
  • Si vous leur permettez de modifier l'adresse e-mail que vous utilisez pour l'envoi d'e-mails pendant se connectant toujours avec l'ancienne adresse qui est déroutante, mauvaise UX, et conduira à des appels d'assistance.
allo
2017-12-22 19:14:20 UTC
view on stackexchange narkive permalink

Il y a pas mal de points pour et contre.

Par exemple, un utilisateur peut vouloir changer le nom pour éviter d'être reconnu car il a remarqué que googler son nom d'utilisateur sur le site A montre son profil sur site B.

D'un autre côté, il y a un point à ne pas autoriser à le changer, afin que les gens puissent le reconnaître à nouveau sur votre site. Pensez à un forum avec un troll bien connu. Les gens savent comment le gérer et ne lui accordent aucune attention. Jusqu'à ce qu'il change de surnom. Bien sûr, ce n'est pas une vraie protection car il peut enregistrer un autre nom d'utilisateur, mais cela évite les abus en changeant le nom de chaque message.

Si le surnom est une sorte de clé primaire, vous ne pouvez pas autoriser le changement il. Pensez à une adresse e-mail ou à un identifiant jabber. Certains sites vous permettent toujours de changer le nom et vous devez faire attention à le faire. Si vous envisagez de changer votre pseudo Twitter, vous feriez mieux d'enregistrer l'ancien nom par la suite pour éviter d'être associé au nouvel utilisateur. C'est un point pour verrouiller le nom d'utilisateur pour une utilisation future après la suppression du compte.

Un nom d'utilisateur fait partie du processus de connexion, donc le changer peut arrêter une attaque par force brute. En fonction du site même sans que l'attaquant sache si le mot de passe est erroné ou si tout l'utilisateur n'existe pas.

En fin de compte, je penserais que le nom d'utilisateur devrait être unique et probablement non modifiable et verrouillé après suppression de compte, mais vous devez fournir un moyen de définir un nom d'affichage qui est affiché plus en évidence que le descripteur de compte.

Jetez un œil à SO, qui utilise des identifiants ou un bon vieux ICQ qui utilise un schéma de numérotation. Les gens doivent utiliser le nom d'affichage dans leur liste de contacts, car qui se souvient de tous les UIN de ses amis?

Enfin, votre décision n'a pas besoin d'être définitive. Vous pouvez toujours passer à l'autre modèle. Rendre les noms d'utilisateur fixes modifiables ne devrait pas être un problème, réparer les noms d'utilisateurs qui étaient modifiables nécessitera probablement une explication pour vos utilisateurs.

Deathhound
2017-12-28 01:04:04 UTC
view on stackexchange narkive permalink

Nous devons examiner certaines des options possibles:

Pourquoi l'utilisateur voudrait-il changer son nom d'utilisateur?
-personnalisation
-ils ont un harceleur

Pourquoi voudriez-vous que l'utilisateur change son nom d'utilisateur?
-la polyvalence / personnalisation attire des clients fidèles

Pourquoi l'utilisateur ne voudrait-il pas que les autres utilisateurs changent leur nom d'utilisateur?
-the OG hipster excuse "j'ai été le premier soccerkid96 il ne peut y en avoir d'autres"
-je ne vois vraiment aucune autre raison

Pourquoi ne voudriez-vous pas que l'utilisateur change son nom d'utilisateur?
-some sort de fraude d'identité? plusieurs comptes de phishing nommés d'après xXP0rn $ L @ yerXx, détenteur du record du monde le plus élevé
- pourraient être utilisés comme porte dérobée pour obtenir des informations ou éventuellement comme une vulnérabilité pour la surcharge de la base de données ou le DDoSing

Pour éviter la plupart des problèmes indésirables, Je recommanderais un identifiant statique unique pour tous les comptes (sans rapport avec le nom du compte public), payer pour le changement de nom d'utilisateur, 1 changement de nom d'utilisateur tous les 5000 ans, etc.



Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...