1

如何在我的 OpenID 登录网站上支持冗余?

例如,我的用户要求 100% 的正常运行时间(是的,没错,但让我们尽可能接近)。

他们中的一些人使用较少可用的提供程序(即,他们自己网站上的 myphpid,或者经常停机的初创公司的 ID)。现在我可以把他们送到更可靠的供应商那里,但我也想有一些冗余。

我希望我可以部署的一种解决方案,但对 OpenID 了解不够,可以尝试:

在具有相同凭据(哈希/密钥/等)但不同域的不同托管服务上设置多个 phpmyid(理想情况下,我有一个循环 DNS 和相同名称,但我也想考虑它们不同的情况域)。

这行得通吗?换句话说,我在不同的服务器上拥有完全相同的 phpmyid 文件,包括凭据。我可以使用 example.com/id 和 example2.com/id 并期望它在我的终端看起来相同,这样我就不必将多个 OpenId 帐户链接到我系统中的每个用户?

虽然我使用 phpmyid 的示例,但问题更笼统 - 凭据是重要的,还是域/ip/???还以防止这种方式链接?

是否存在或是否存在一种标准,允许人们将自己的 OpenID 从一个提供商转移到另一个提供商,而不必在他们使用该 openid 的每个网站上断开和重新链接?

-亚当

4

2 回答 2

2

OpenID 是一个 URL。example.com/id 和 example2.com/id 是两个不同的 OpenID,无论是哪个提供商托管它们或用户与这些提供商共享什么凭据。OpenID 的可靠性实际上归结为托管该 URL 的可靠性。是的,您可以在 XRDS 文档中定义后备提供程序,但您仍然必须首先能够从 OpenID URL 中发现该文档。

因此,OpenID 的可靠性技术在很大程度上与任何其他具有固定 URL 的 Web 资源相同。而且,作为依赖方,您对此无能为力。正如您所说,由您的用户选择适合他们自己要求的 OpenID 提供程序。您可能会建议您的用户询问他们的 OpenID 提供商是否有可用的服务级别协议。

您可以做的一件事是允许您的用户将他们在您的应用程序中的帐户与多个 OpenID 相关联。

于 2008-09-24T20:24:56.910 回答
0

我最近发布了对“如何使用多个 OpenID?”这个问题的回答。这可能会解决您的担忧。

专业提供商应该有一个冗余服务,通常通过在两个单独的服务器前面安装一个负载平衡器来归档,但是用户应该在一个自定义域(或使用 i-name)上托管一个 XRDS 文档,并引用不同的提供商(用于回退目的)

您还可以在不同的服务器上托管相同的数据,但循环不会帮助您。这是因为轮询只是充当一个简单的负载均衡器(它不检查主机是否可访问)。

于 2008-09-24T14:22:39.637 回答