openId-是否可以从OpenId Provider站点启动登录?

Jan*_*ing 2 openid authentication openid-provider

通常,用户首先访问客户端站点(例如stackoverflow),然后重定向到OpenID提供程序(OP),并在身份验证后重定向回客户端。

想象一下,现在我们有一个充当OP的门户。登录门户后,它应该显示指向应用程序的链接。这些应用程序正在使用openID客户端管理登录。是否可以构造到应用程序(openID客户端)的链接(或重定向标头)?

像这样一步一步:

  1. 新鲜的浏览器(旧的Cookie等已删除)
  2. 访问OpenID提供程序
  3. 登录到OpenID Provider站点。
  4. 单击个人资料中指向提供openID客户端机制的另一个网站的链接
  5. 您无需用户采取任何进一步措施即可立即登录

可能吗?还是我总是必须先访问openId客户端才能启动会话或类似的东西?

(如果它不同于openId v1和v2,则很高兴听到它)

Sur*_*Att 5

是。这是可能的,但是这不是OpenID规范的一部分,该规范没有讨论IDP启动的身份验证流程。诀窍在于IDP。让我总结一下。

OP与用户进行两种交互:

  1. 要求输入密码。(如果OP可以使用cookie或会话值来记住经过身份验证的用户,则可以在以后的登录中跳过此交互)

  2. 征得同意。也就是说,要求用户授予应用程序访问用户身份信息的权限。(如果可以将OP配置为针对用户允许的设置应用程序跳过此步骤,那么也可以避免这种交互)

因此,流程将如下所示:

  1. 用户登录OP(然后OP会记住用户)
  2. 用户点击一个应用程序,例如,应用程序将用户重定向到OP。(OP跳过身份验证,然后OP识别出有一个配置跳过此用户对此应用程序的同意提示,OP跳过同意)。
  3. OP将用户重定向回应用程序并登录。