2015-11-02 64 views
0

我正在使用App Engine/java。如何将雅虎用户从OpenId迁移到OAuth

我需要将我的雅虎用户从OpenID 2.0迁移到OAuth 2.0登录(OpenID Connect),因为OpenID 2.0依赖方支持使用OpenID 2.0帐户登录到App Engine时将被关闭。

对于我的雅虎用户,我在数据存储以下信息:

当我实现登录与使用雅虎OAuth,我需要使用OAuth进程提供的信息来识别数据存储中的现有用户。但是,Yahoo OAuth进程不提供开放标识(Yahoo不支持OpenId Connect),也没有提供电子邮件地址。

那么如何将我现有的雅虎用户从OpenId迁移到OAuth?两种机制之间建立链接并执行迁移的共同信息是什么?

备注:这适用于Google登录,因为Google支持OpenId Connect。在这种情况下,OpenId Connect/open-id == OpenId/federated identity,这使得迁移用户成为可能。

回答

1

一种可能的方法是切换到谷歌标识工具包,它提供:

  • 联合登录操作细节特定供应商几乎透明地为您
  • 由一个特定的供应商认证的逐步迁移用户的一种方式从现有的方法到GIT,请参阅“5步迁移现有站点”部分。

我看到的唯一缺点是GIT支持的提供程序数量有限(通过支持基于密码的身份验证稍微提高了一点)。如果您感兴趣的提供商(如Yahoo)位于受支持的列表中,则不是问题。