【问题标题】:Should I store the connection scheme for an OpenID?我应该存储 OpenID 的连接方案吗?
【发布时间】:2009-07-24 05:55:20
【问题描述】:

当有人登录我的网站时,我是否应该为 OpenID 存储连接方案 http 或 https?或者只是之后发生的事情:http://pupeno.com 或 pupeno.com?

【问题讨论】:

    标签: url openid url-scheme


    【解决方案1】:

    在 OpenID 中,登录的人正在声明一个 URI。因此,您应该存储整个声明的 URI、方案和所有内容。

    (例如,https://joeuser.example.com/ 可能与 http://joeuser.example.com/ 完全不同。)

    编辑:cmets 中的每个问题:如何处理部分 URL;

    对于部分 URL,例如 example.com 而不是 http://example.com,有一个 OpenID standard URI normalisation,必须在身份验证之前对(所有)用户输入执行。

    这是基于Section 6 of RFC 3986与其他系统的通用性。

    Appendix A1 of the OpenID 2.0 spec 中有一些示例。

    【讨论】:

    • 此外,您必须将整个 URI(除了方案和主机名)视为 区分大小写。例如a.com/b 必须被认为与a.com/B 完全不同。由于方案和主机名不区分大小写,我建议您在存储或比较 OpenID 之前只降低这些部分,这样您就可以在整个字符串中区分大小写。
    • 我该怎么处理像我这样只输入“pupeno.com”的用户?我只是在它前面添加 http:// 吗?
    【解决方案2】:

    您应该注意,以 = 或 @ 符号开头的 XRI's 是有效的 OpenID 标识符(它们也可以嵌入到 proxy server 中,即http://xri.net/=example)。在这种情况下,您应该存储 i 编号或规范 URI。

    【讨论】:

      猜你喜欢
      • 2016-11-19
      • 2013-12-15
      • 1970-01-01
      • 2018-07-02
      • 2011-08-21
      • 1970-01-01
      • 2017-07-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多