Quels sont les inconvénients d'avoir un point dans un nom d'utilisateur?

26

Un étudiant vient de demander quel pourrait être l’inconvénient d’avoir un point ( . ) dans le nom de l’utilisateur. Par exemple: john.doe

Quelle incidence cela aura-t-il sur le système ou sur les applications?

    
posée Luis Alvarado 15.01.2014 - 01:34
la source

3 réponses

36

POSIX indique qu’il s’agit des noms d’utilisateur:

  

[...] Pour être portable sur des systèmes conformes à la norme IEEE 1003.1-2001, la valeur est composée de caractères du jeu de caractères du nom de fichier portable. Le trait d'union ne doit pas être utilisé comme premier caractère d'un nom d'utilisateur portable.

... où le jeu de caractères du nom de fichier portable est:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9 . _ -

Par ailleurs, la page de manuel du fichier /etc/adduser.conf indique:

   VALID NAMES
          adduser and addgroup enforce conformity to IEEE Std 1003.1-2001,
          which  allows  only  the following characters to appear in group
          and user names: letters, digits, underscores, periods, at  signs
          (@) and dashes. The name may not start with a dash. The "$" sign
          is allowed at the end of usernames (to conform to samba).

          An additional  check  can  be  adjusted  via  the  configuration
          parameter NAME_REGEX to enforce a local policy.

Cependant,

Alors que les deux spécifications semblent inclure le point, Ubuntu (sur mon 13.04 au moins) semble l’interdire:

⊳ sudo adduser as.df
adduser: Please enter a username matching the regular expression configured
via the NAME_REGEX[_SYSTEM] configuration variable.  Use the '--force-badname'
option to relax this check or reconfigure NAME_REGEX.

La valeur par défaut de NAME_REGEX dans Ubuntu est (à partir de la page de manuel /etc/adduser.conf ):

^[a-z][-a-z0-9]*$
  • Commencez par une lettre minuscule, puis un nombre quelconque de tirets, de lettres minuscules ou de chiffres. Aucun _ , @ ou . .

Donc,

en conclusion, un point . peut être utilisé pour un nom d'utilisateur Ubuntu, le NAME_REGEX doit simplement être changé en /etc/adduser.conf . Comme il est conforme à POSIX, il ne devrait y avoir aucun problème à avoir un . dans le nom d'utilisateur avec un programme compatible POSIX.

Pour activer un point dans les noms d'utilisateurs

  1. Exécutez cette commande dans un terminal:

    sudo nano /etc/adduser.conf
    
  2. Localisez cette ligne (vers la fin du fichier)

    #NAME_REGEX="^[a-z][-a-z0-9]*$"
    

    et remplacez-le par

    NAME_REGEX='^[a-z][-.a-z0-9]*$'
    

    Notez que - doit rester le premier caractère de l’expression de parenthèse [...] , sinon il est considéré comme spécifiant une plage a-z .

  3. Appuyez sur Ctrl + X , puis Y , puis Entrez .

Références:

réponse donnée kiri 15.01.2014 - 03:28
la source
3

Les applications qui lisent les noms d'utilisateur peuvent utiliser une regex qui suppose que votre nom d'utilisateur respecte les règles et ne peut donc pas gérer votre nom d'utilisateur.

    
réponse donnée Jo-Erlend Schinstad 15.01.2014 - 01:48
la source
2

Marc Haber explique un inconvénient possible du bogue Debian # 604242 (Autoriser points dans le nom d'utilisateur par défaut):

  

Avoir des points dans le nom d'utilisateur crée des problèmes avec les scipts utilisant    chown , qui accepte toujours les points comme séparateur entre le nom d'utilisateur et   nom de groupe. Si chown accepte toujours les points, il y aura des scripts utilisant   cette notation, qui se cassera si un nom d'utilisateur contient un point.

     

Je recommande de conserver la valeur par défaut actuelle (qui peut être   écrasé par la configuration locale) jusqu'à ce que chown ait cessé d'accepter   points comme séparateur.

Et chown accepte toujours le point comme séparateur, bien qu'il ne soit plus documenté. Je suis d'accord que la compatibilité POSIX devrait prévaloir, et j'emploie en effet des noms d'utilisateur contenant des points sur plusieurs systèmes sans aucun effet négatif.

    
réponse donnée Ferenc Wágner 17.05.2018 - 13:49
la source

Lire d'autres questions sur les étiquettes