将IP地址作为OpenID有效吗?

时间:2011-07-17 09:55:51

标签: openid ip-address

大多数OpenID库都要求您输入域名作为OpenID。将198.51.100.1这样的IP地址作为OpenID而不是auth.example.com是否有效/可能?

1 个答案:

答案 0 :(得分:0)

我假设当你说“作为OpenID”时,你的意思是“作为用户提供的OpenID标识符”。

如果是这样,那么回答尽可能短:是的,但这不是最好的主意。

答案很长: OpenID 2.0规范定义用户提供的OpenID标识符应该是有效的XRI或URI [1],因此输入http://1.2.3.4/应该导致有效的规范化,发现和认证,因为URI中的IP被认为是有效的URL,直到RFC3986 [ 2]去。

那说你必须考虑一些事情:

  1. IP地址发生变化,您可能声称这是可靠的,但事实并非如此(例如,在某些将来您将不得不切换到IPv6,然后您将无法访问使用此类IP OpenID进行身份验证的所有站点)。使用基于域的OpenID,您只需将您的域指向新IP即可。
  2. 提供OpenID(依赖方)的网站在规范化之前执行OpenID标识符验证。迟早你会偶然发现一个不会将IP验证为有效的OpenID标识符的文件。
  3. 参考文献:

    1. http://openid.net/specs/openid-authentication-2_0.html#normalization
    2. http://www.ietf.org/rfc/rfc3986.txt