Por que limitar o tamanho máximo do nome de usuário a 8 caracteres?

12

Ao longo da minha humilde carreira em TI, geralmente vejo o comprimento do nome de usuário limitado (geralmente de 8 caracteres). Isso ocorre em vários sistemas, incluindo o Active Directory e os aplicativos de banco de dados.

Existe uma razão para isso? Existem melhores práticas em relação à criação de nome de usuário?

    
por Geordan 17.12.2010 / 19:36

2 respostas

14

É uma limitação dos sistemas Unix legados e do serviço de diretório NIS em particular. Normalmente, essa restrição está em vigor apenas se a organização estiver tentando manter nomes de usuários consistentes em todos os aplicativos (o que geralmente é uma boa ideia).

    
por 17.12.2010 / 19:38
5

O principal com o qual vi recentemente problemas com o ps no Solaris (10) é que desativa os personagens do nono +, portanto, por exemplo, se você precisar usar o nome de usuário, ele não corresponderia.

$ sudo -u longusername ps -fu longusername
     UID   PID  PPID   C    STIME TTY         TIME CMD
longuser 14012 11985   0 09:58:39 pts/2       0:00 ps -fu longusername

Se você fizer um ls -l em um diretório com arquivos pertencentes a esse usuário, as colunas serão empurradas para fora do alinhamento.

$ ls -ld /export/home/l*
drwxr-xr-x   2 lauser   users        6 Mar 23 10:21 /export/home/lzuser
drwxr-xr-x   2 longusername users        6 May  4 10:02 /export/home/longusername
drwxr-xr-x   2 lzuser   users        6 Mar 12 11:21 /export/home/lzuser

Basicamente, você precisaria desconfiar de qualquer ferramenta que lidasse com nomes de login e não apenas UIDs. Isso pode incluir coisas que leiam ou escrevam em arquivos de log ou bancos de dados, ou use a saída de ferramentas como last, who, finger, ls, ps, etc.

Um rápido Google apareceu nesta página:

link

Que adiciona mais algumas razões.

No que diz respeito às práticas recomendadas para criação de nome de usuário, também pode haver complicações do uso de logins em maiúsculas em vez de minúsculas, de modo que isso também deve ser evitado.

Quando alguns sistemas (antigos), quando vêem um login apenas em maiúsculas, eles assumem que o terminal do usuário não suporta letras minúsculas, então configure TUDO para estar em maiúsculas (o que pode impedir a entrada da senha e ser capaz de digitar comandos Unix depois de fazer o login!)

    
por 08.05.2012 / 12:41