Sql server 将OpenId字段保存到数据库-它们的类型/长度是什么?

Sql server 将OpenId字段保存到数据库-它们的类型/长度是什么?,sql-server,openid,Sql Server,Openid,我想将一些OpenId字段保存到数据库表中,例如 OpenId标识符 全名 别名 电子邮件 等等 是否有一个地方可以汇总所有公共模式字段的数据类型和长度?我知道有定制的(每个提供商)。。但是普通的呢 例如,电子邮件->nvarchar(250)。。或者别的什么 干杯:)对电子邮件使用常识。我从未见过超过40-50个字符的电子邮件地址。任何较长的地址都可能是垃圾邮件或假地址。 编辑:查看电子邮件RFC,电子邮件地址的最大长度可能是64(用户名)+1(字符@)+255(域)。无论如何,我还是会选

我想将一些OpenId字段保存到数据库表中,例如

  • OpenId标识符
  • 全名
  • 别名
  • 电子邮件
  • 等等
是否有一个地方可以汇总所有公共模式字段的数据类型和长度?我知道有定制的(每个提供商)。。但是普通的呢

例如,电子邮件->nvarchar(250)。。或者别的什么


干杯:)

对电子邮件使用常识。我从未见过超过40-50个字符的电子邮件地址。任何较长的地址都可能是垃圾邮件或假地址。


编辑:查看电子邮件RFC,电子邮件地址的最大长度可能是64(用户名)+1(字符@)+255(域)。无论如何,我还是会选择最大长度为100或更少。

从技术上讲,OpenID标识符可以和合法URL一样长(实际上大约为2K),但我认为150个字符是一个很好的最大长度

顺便说一句,请确保将声明的标识符存储为主键(或等效的查找列),而不是用户提供的标识符或您在身份验证过程中可能看到的任何其他变体。此外,为了真正安全,您需要在URL路径上进行区分大小写的比较(在主机区域中可以不区分大小写)。由于区分大小写的问题很复杂,我总是将主机规范化为小写,然后对整个字符串进行区分大小写的比较。

请参阅:

openid.sreg.email:中指定的最终用户的电子邮件地址 [RFC2822]第3.4.1节


@弗里尔:你从哪里得到这个信息的?链接?有描述openid模式的标准文档吗?Wikipedia有一些到RFC的链接和一个简短的描述:openid模式的呢。。不仅仅是(通用)电子邮件地址??你能告诉我RFC2822的最大电子邮件长度是多少吗?文本太多,无法阅读:(