如何在我的OpenID登录网站上支持冗余?
例如,我有一些用户要求100%的正常运行时间(是的,没错,但让我们尽可能地接近)。
他们中的一些人使用的供应商较少(例如,他们自己的网站上的myphpid,或者经常停机的初创公司的ID )。现在,我可以将它们传送到更可靠的提供商,但我也希望有一些冗余。
我希望我可以部署一个解决方案,但对OpenID的了解还不够深入,因此无法尝试:
在不同的主机服务上设置几个phpmyid,使用相同的凭据(hash/key/etc),但不同的域(理想情况下,我应该有一个循环DNS和相同的名称,但我也想考虑到它们具有不同域的情况)。
这样行得通吗?换句话说,我在不同的服务器上有完全相同的phpmyid文件,包括凭证。我是否可以使用example.com/id和example2.com/id,并期望它在我这一端看起来是一样的,这样我就不必将多个OpenId帐户链接到我的系统中的每个用户?
虽然我使用的是phpmyid的例子,但问题更一般--凭据是重要的,还是域/ip/?还能以这种方式联系起来,防止这种情况发生吗?
有没有,或者说,有没有一种标准,允许人们将自己的OpenID从一个提供商转移到另一个提供商,而不必在他们使用该openid的每个网站上一次又一次地去链接?
-Adam
发布于 2008-09-24 20:24:57
OpenID是一个网址。example.com/id和example2.com/id是两个不同的OpenID,无论它们是由哪个提供商托管的,也不管用户与这些提供商共享什么凭据。OpenID的可靠性实际上取决于托管该URL的可靠性。是的,您可以在OpenID文档中定义备用提供程序,但仍然必须能够首先从XRDS URL发现该文档。
因此,在很大程度上,OpenID的可靠性技术与任何其他具有固定网址的web资源是相同的。而且,作为一个依赖方,你对此无能为力。正如您所说的,这取决于您的用户选择适合他们自己需求的OpenID提供商。您可能会建议您的用户询问其OpenID提供商是否有可用的服务级别协议。
您可以做的一件事是允许用户将他们在应用程序中的帐户与多个OpenID相关联。
发布于 2008-09-24 14:22:40
我最近发布了an answer to the question "How do I use more than one OpenID?",它可能会解决您的担忧。
专业的提供者应该有一个冗余的服务,通常通过在两个单独的服务器前面有一个负载均衡器来归档,但是用户应该在自定义域上托管一个XRDS文档(或使用i-name),引用不同的提供者(出于备用目的)
您也可以在不同的服务器上托管相同的数据,但循环调度不会对您有所帮助。这是因为循环调度只充当一个简单的负载均衡器(它不检查主机是否可访问)。
https://stackoverflow.com/questions/127424
复制相似问题