什么是pam_unix:坏用户名是什么意思?

时间:2012-06-01 06:31:17

标签: linux login pam

任何人都可以告诉我这个错误是什么意思。什么时候会出现。我试过谷歌搜索,但没有结果。请指出正确的文档以了解此错误。

1 个答案:

答案 0 :(得分:1)

pam_unix模块中的以下代码触发了此错误(来源:Linux-PAM-0.99.5):

if (name == NULL || !isalnum(*name))

name == NULL将由使用PAM协议的程序错误触发,其中username变量未被设置为pam会话的一部分。

第二个原因,可能最有趣的是用户名的第一个字符必须是字母数字,即字符必须是A-Za-z或{{1}中的一个}}。不接受重音字符。

较新版本的Linux-PAM(见fedorahosted source of pam_unix.c)说:

0-9

这意味着它只会拒绝if (name == NULL || name[0] == '-' || name[0] == '+') -个字符 - 即它不如旧资源严格。