Google API 第23回

投稿者: | 2015年12月15日

今回はGoogle Identity Toolkit APIの使用方法について紹介します。
Google Identity Toolkit APIとはソーシャルログインを可能にするAPIです。
ソーシャルログインとはGoogleやYahoo、Facebookなどの外部サービスのアカウントを利用して
ウェブサイトのログインを可能にする機能です。

■ソーシャルログインのメリットとデメリット
ソーシャルログインにはユーザー、ウェブサイト運営者に
それぞれメリット、デメリットがあるのできちんと把握しておきましょう。

○ユーザーのメリット
・会員登録やログインが簡単にできる

○ウェブサイト運営者のメリット
・ログイン画面での離脱率が減る
・継続利用者やログイン率が上がる
・ソーシャルデータの取得ができる

○ウェブサイト運営者のデメリット
・必要な個人情報が取得できない場合がある
・ソーシャルログインを導入するには、導入するAPIの知識が必要

ここからは本題のGoogle Identity Toolkit APIの使用方法について説明をします。

■Google Identity Toolkit APIの使用方法
Google Identity Toolkit APIを使用するにはGoogle Developers Consoleで
APIを有効にし、API KEYなどの作成、APIの設定を行う必要があります。

ここでは「Google Developers Consoleの設定」「Identity Toolkit APIの実行」の順に
使用方法を説明します。

1.Google Developers Consoleでの設定
参考サイトのGoogle Developers Consoleにアクセスし適当なプロジェクトを選択します。
そして、下記の操作を順に行います。

・Identity Toolkit APIを有効にする
左メニューの[API Manager]から[概要]を選択します。
概要画面に移動したら、Identity Toolkit APIを検索し有効にします。

・OAuth2のクライアントIDを作成する
左メニューの[API Manager]から[認証情報]を選択します。
認証情報画面に移動したら、[新しい認証情報]のセレクトボックスから
[OAuth2.0 クライアント ID]を選択します。

設定値
アプリケーションの種類:ウェブアプリケーション
名前:Google Identity Toolkit
承認済みの JavaScript 生成元:http://ホスト名
承認済みのリダイレクト URI:http://ホスト名/gitkit-widget.html

[作成]を選択して作成完了です。

・サービスアカウントを作成する
左メニューの[API Manager]から[認証情報]を選択します。
認証情報画面に移動したら、[新しい認証情報]のセレクトボックスから
[サービスアカウント]を選択します。

設定値
キーのタイプ:P12

[作成]を選択して作成完了です。

・APIキーを作成する
左メニューの[API Manager]から[認証情報]を選択します。
認証情報画面に移動したら、[新しい認証情報]のセレクトボックスから
[APIキー]を選択します。

設定値
新しいキーの作成:ブラウザキー
名前:Google Identity Toolkit

[作成]を選択して作成完了です。

・Identity Toolkit APIを設定する
左メニューの[API Manager]から[概要]を選択します。
概要画面に移動したら、Identity Toolkit APIを検索し設定画面に移動します。

設定値
ウィジェットの URL:http://ホスト名/gitkit-widget.html
ログイン成功時の URL:任意のURL
ログアウト URL:任意のURL
メール送信用 URL:任意のメールアドレス
プロバイダ:Google

[保存]を選択し設定完了です。

[保存]の下にクライアントの設定とサーバーの設定の情報があります。
情報はIdentity Toolkit APIの実行で使用するのでテキストなどにメモしておきます。

2.Identity Toolkit APIの実行
Google Developers Consoleでの設定が終わったら
参考サイトのIdentity ToolkitのJavaサンプルコードをダウンロードします。
ダウンロードが終わったら、Identity Toolkitを解凍して任意の場所(サーバなど)に配置します。

・サーバーの設定
メモしたサーバーの設定情報をjsonの拡張子で名前をつけて保存します。
配置したIdentity Toolkitから下記をテキストエディタで開きます。
\identity-toolkit-java-master\src\main\java\com\google\gitkit\samples\GitkitExample.java
gitkit-server-config.jsonという文字列を探し先ほど保存した設定ファイルのパスに置き換えます。

・クライアントの設定
配置したIdentity Toolkitから下記をテキストエディタで開きます。
\identity-toolkit-java-master\templates\gitkit-widget.html
\identity-toolkit-java-master\templates\index.html
メモしたクライアントの設定に値を置き換えます。

・実行
Mavenを使用してビルドと実行を行います。

mvn clean
mvn compile
mvn exec:exec

実行するとサインイン画面が表示されます。
google_api23-1
[Sign in]を選択するとログイン画面が表示されます。
google_api23-2
ログインするとアプリケーションから許可を求められます。
google_api23-3
[許可]を選択するとアクセス成功時の画面に移動します。
[拒否]を選択するとログイン画面に移動します。

以上がGoogle Identity Toolkit APIの説明になります。

今回はJavaを用いた方法を説明しましたが、
Python、PHP、Ruby、Node.js、Go、Android、iOSにも対応しているので
自分の環境にあった言語を選ぶことができます。

また今回はGoogleのプロバイダのみ選択しましたが、他にも
Facebook、Yahoo、Paypal、Aol、Microsoftといったプロバイダがあります。
プロバイダは複数選ぶことができるので
様々なユーザーを対象としたウェブサイトを作ることができます。

自分でソーシャルログインを導入することが難しい方は
ソーシャルログインのサービスを提供しているソーシャルPLUSやGIGYAなどの
サービスを検討されてはいかがでしょうか。

<参考サイト>
Google Developers Console
Identity ToolkitのJavaサンプルコード