文本字段中允许的字符标准是什么

时间:2009-01-19 21:10:23

标签: html textbox standards passwords character

新用户注册时文本字段中允许的典型字符是什么?有www标准吗?特别感兴趣的是允许的用户名和密码字符类型。

10 个答案:

答案 0 :(得分:12)

不要限制密码字符。可用的字符越多,密码就越安全。没有充分理由禁止空格,例如密码。

对于用户名,它取决于它们的显示位置。如果您打算为用户提供自己的个人资料网址,则您希望限制字符的次数远远超过其他人。

再次输出时,不要忘记转义用户输入。

答案 1 :(得分:4)

我更喜欢能够使用字母,数字和特殊字符来创建我的密码。当网站拒绝使用特殊字符时,我真的很讨厌它,特别是!@ $ *。

答案 2 :(得分:4)

你有什么理由否认任何角色?你应该只允许一切,可能的例外是空字符。在您的网站上打印时,您必须对用户名进行编码以避免跨站点脚本问题,但即使您为了安全而过滤“危险”字符,您也可能应该这样做。允许所有字符,尤其是密码,大大提高了可用性(以及密码时的安全性)。另外,请记住,如果某些用户的名字中有重音符号(或者如果他们使用的是非拉丁字母,如中文或俄语),则可能需要输入UTF8字符。

答案 3 :(得分:3)

如果您确实限制字符,不应该是为了安全(例如,阻止引号,以便人们无法插入SQL)。您的代码应该能够处理输入字符串中的任何字符,只要它们被发送到某个地方就可以正确地转义它们。但出于商业原因或出于某些其他实际原因(例如Zach的URL示例)限制它们是可以的。

答案 4 :(得分:2)

请允许所有O'Briens,O'Malleys,O'Reillys和其他撇号名字的撇号!

答案 5 :(得分:2)

您的申请是否会被任何非英语用户使用?

至少允许欧洲字符如áàéèì。

当然,如果它必须真正国际化,那么你必须允许使用中文和阿拉伯语等语言中的任何字符。

在我看来,如果你不想让任何人发疯,你就不能真正列出允许的角色。

如果您出于安全目的而这样做,我建议在尝试使用字符串之前转义必要的字符,而不是在前面过滤。

答案 6 :(得分:2)

  • 密码字段应该允许任何字符(无论如何你只是要哈希吧?)
  • 文字字段应限于特定字符(例如[A-Za-z])。否则,您将不允许需要(或想要)使用重音字符的人。从数据库/处理方面来看,您将转义或使用绑定来保存数据。
  • 如果您有知道的特定字段只能接受特定字符集(JW提到的业务原因等)。例如,仅适用于美国受众群体的表单可能会限制为邮政编码的数字和短划线。

答案 7 :(得分:2)

也增加了别人所说的话: 密码:任何事物和一切,但是哈希(当然)

用户名:一切,除了,可能是空格......或多个空格(即单个空格都可以,多个空格= 1个空格)

答案 8 :(得分:1)

密码应作为绝对最小值,允许目标语言环境中键盘提供的每个字符。

答案 9 :(得分:1)

不要限制任何内容,如果您想为用户提供他们自己的URL,请使用数字ID或要求用户为URL创建名称。永远不要显示用户的用户名,显示他们的显示名称(除了危险的Unicode字符以外的任何内容),并在注册后要求显示。