1

App Engine / Java を使用しています。

Yahoo ユーザーを OpenID 2.0 から OAuth 2.0 ログイン (OpenID Connect) に移行する必要があります。これは、OpenID 2.0 アカウントを使用して App Engine にログインするための OpenID 2.0 Relying Party サポートがオフになるためです。

Yahoo ユーザーの場合、データストアに次の情報があります。

OAuth を使用して Sign-in with Yahoo を実装する場合、OAuth プロセスによって提供される情報を使用して、データストア内の既存のユーザーを識別する必要があります。ただし、Yahoo OAuth プロセスは、open-id を提供せず (Yahoo は OpenId Connect をサポートしていません)、電子メール アドレスも提供しません。

では、既存の Yahoo ユーザーを OpenId から OAuth に移行するにはどうすればよいでしょうか? リンクを作成して移行を実行するための両方のメカニズムに共通する情報は何ですか?

注: Google は OpenId Connect をサポートしているため、これは Google でサインインする場合に問題なく機能します。この場合、OpenId Connect / open-id == OpenId / フェデレーション ID となり、ユーザーの移行が可能になります。

4

1 に答える 1

1

考えられるアプローチの 1 つは、以下を提供する Google Identity Toolkit に切り替えることです。

  • 特定のプロバイダーのフェデレーテッド ログイン処理の詳細は、かなり透過的に行われます。
  • 特定のプロバイダーによって認証されたユーザーを、既存の方法から GIT の方法に徐々に移行する方法については、「5 つの手順で既存のサイトを移行する」セクションを参照してください。

私が目にする唯一の欠点は、GIT がサポートするプロバイダーの数が限られていることです (パスワードベースの認証をサポートすることで少し有利になります)。関心のあるプロバイダー (Yahoo など) がサポートされているリストに含まれている場合は問題ありません。

于 2015-11-03T11:34:33.180 に答える