Authentication 硬编码单个OpenID提供程序的注意事项?

Authentication 硬编码单个OpenID提供程序的注意事项?,authentication,openid,Authentication,Openid,我们正在考虑在Django web应用程序(我们称之为网站1)和另一个特定网站(网站2)之间进行单点登录的几个选项。我们的两项首要任务是: 易于实施/维护 避免了登录过程的复杂性(我们的受众根本不懂技术)。换句话说,我不想让他们知道什么是OpenID。不过,他们知道如何使用网站2上的凭证 OpenID有很多Django应用程序,但我们不想让用户选择他们的提供商(我们想强迫他们使用他们的“网站2”凭据)这是我最关心的问题:我是否可以对提供商进行硬编码,以便他们始终使用“网站2”作为权限? 到目

我们正在考虑在Django web应用程序(我们称之为网站1)和另一个特定网站(网站2)之间进行单点登录的几个选项。我们的两项首要任务是:

  • 易于实施/维护
  • 避免了登录过程的复杂性(我们的受众根本不懂技术)。换句话说,我不想让他们知道什么是OpenID。不过,他们知道如何使用网站2上的凭证
OpenID有很多Django应用程序,但我们不想让用户选择他们的提供商(我们想强迫他们使用他们的“网站2”凭据)这是我最关心的问题:我是否可以对提供商进行硬编码,以便他们始终使用“网站2”作为权限?

到目前为止,我的研究似乎认为以下是流程:

  • 用户进入登录页面。我们要么显示一个按钮供他们点击登录,要么 我们只是说“我们将把您重定向到站点X进行身份验证”,然后在几秒钟后这样做
  • 用户被重定向到网站2。他们输入他们的凭证,并被重定向回我们
  • 用户不知道/不关心刚刚发生了什么,我们有一些简单的东西可以快速启动

我走对了吗?这可能吗?您看到任何警告了吗?

这应该是可能的。但网站2必须是OpenID提供商。之后,您将硬编码Website2 OpenID登录入口点,并在登录时检查提供者哈希标记是否与Website2匹配,如果不匹配,则重定向到Website2或其他页面以处理该错误。