Google+ サインインからマイグレーションする



  • この記事は、Google Sign-In for Android に関する記事を和訳したものです。
  • 原文: Migrate from Google+ Sign-In
  • 元記事のライセンスは CC-BYで、この和訳記事のライセンスは CC-BYです。
  • 自己責任でご利用ください。
  • 和訳した時期は 2019年6月ころです。

あなたのアプリを Google+ サインインから Googleサインインにマイグレーションするには、あなたのサインインボタンを、ユーザからリクエストするスコープ、Googleからプロファイル情報を受信する方法を更新する必要があるでしょう。 詳しい手順については、Google Sign In for Android documentationに従ってください。

あなたのサインインボタンを更新するとき、G+ を参照する、あるいは、赤色を使用しないでください。 私たちの最新の branding guidelinesに従ってください。

ほとんどの Google+ サインインアプリケーションは、次のスコープの組み合わせの幾つかをリクエストしました: plus.loginplus.me、および plus.profile.emails.readDEFAULT_SIGN_INオプションとともに GoogleSignInOptions.Builderを使用することによって、ユーザの名前およびプロファイル写真を提供する profileスコープを自動的にリクエストするでしょう。 もしユーザの電子メールアドレスも欲するならば、Googleサインインオプションを構築するとき、.requestEmail()を呼び出す必要があります。

ほとんどの Google+ サインインの実装は、code flowを使用しました。 これは、Android、iOS、あるいは、JavaScriptアプリは、Googleから OAuth認証コードを取得し、そのコードをサーバに返信することを意味します(クロスサイトリクエストフォージェリ保護とともに)。 それから、サーバは、コードを検証し、people.get APIからユーザプロファイル情報を引き出すために、リフレッシュおよびアクセストークンを取得します。

Googleは、今は、IDトークンをリクエストし、あなたのクライアントからあなたのサーバに IDトークンを送信することをお勧めします。 IDトークンは、クロスサイトフォージェリ保護を組み込みで持っており、あなたのサーバ上で静的に検証されることもできるので、Googleのサーバからユーザプロファイル情報を取得するための余分な API呼び出しを回避することができます。 あなたのサーバ上で IDトークンを検証するの指示に従ってください。

もしプロファイル情報を取得するためにコードフローをまだ使用したければ、そうすることができます。 ひとたびあなたのサーバがアクセストークンを持ったならば、私たちのサインイン Discovery documentに指定された userinfoエンドポイントからユーザプロファイル情報を取得する必要があるでしょう。 APIレスポンスは、Google+ プロフィールのレスポンスとは異なる形式になるでしょうから、あなたの解析を新しい形式に更新する必要があるでしょう。

もし GoogleAuthUtil.getTokenあるいは Plus.APIを使用しているならば、より良いセキュリティとより良いユーザエクスペリエンスのために、最新のサインイン APIにマイグレーションする必要があります。