代码之家  ›  专栏  ›  技术社区  ›  Joannes Vermorel Jonathan McIntire

我应该根据协议前缀区分OpenID吗?HTTP与HTTPS

  •  4
  • Joannes Vermorel Jonathan McIntire  · 技术社区  · 15 年前

    我已经为我的ASP.NET应用程序实现了一个简单的OpenID支持 DotNetOpenAuth . 然而,我最近才意识到,这个实现正在处理 http://johndoe.example.com/ 作为一个独特的用户 https://johndoe.example.com .

    这导致相当多的用户困惑。我现在不确定该怎么做。 这是一个bug还是一个特性?

    实际上,我可以将这种行为视为一种特性:如果用户指定了HTTPS,那么用户可能不希望系统首先接受HTTP身份验证。

    另一方面:如果用户出于纯粹的笨拙而指定了HTTPS(临时的Web访问者对于“s”部分的目的一无所知),那么拒绝它的身份验证尝试是令人困惑的。

    什么是最佳实践?

    2 回复  |  直到 15 年前
        1
  •  -1
  •   Rinat Abdullin    15 年前

    理论上,HTTP和HTTPS身份可能不同。实际上(由现实世界中的提供者实现),它们不应该是。

    StackOverflow不区分 之间 http://abdullin.myopenid.com https://abdullin.myopenid.com 因此,该解决方案可能适用于99%的情况。

        2
  •  4
  •   weblivz    15 年前

    是的-它们完全不同,应该这样对待。

    对OP的建议是始终使用HTTPS,但情况并非总是如此(刚才)。

    推荐文章