新しいWebサービスやアプリへ登録するにあたり、既存のSNSアカウントを使ったことがある方は多いでしょう。これはソーシャルログインといって、新規のアカウント登録かかる手間を省きながら、SNSが本来持つセキュリティも利用できるという大変便利な機能です。では、このソーシャルログインの仕組みは一体どうなっているのでしょうか?本記事では、ソーシャルログインの仕組みから考慮すべき重要なポイントをご紹介します。ソーシャルログインの実装を検討されている方は、ぜひ参考にしてください。
ソーシャルログインの基本、OAuth(オー・オース)とは?
ソーシャルログイン機能を実装しているWebサービスやアプリの多くでは現在、OAuthと呼ばれる権限認証アプリケーションを使って安全な環境下でのログインを提供しています。OAuthとはユーザー同意の下、特定のWebサービスやアプリにユーザーデータを受け渡す仕組みです。その際に、アカウントIDやパスワードといった情報を入力することなくデータの受け渡しが完了します。
加えて、アカウントIDとパスワードを入力する代わりに「トークン」と呼ばれる、一時的なキーをWebサービスはアプリが取得し、OAuthがそのトークンを認証することで不正アクセスではないと判断し、SNSアカウントを使ったログインを可能にします。以下に、その処理プロセスの流れを簡単に説明します。
- ユーザーのデータを管理するリソースサーバーに対し、ソーシャルログインにそれらのデータを利用したいWebサービスやアプリがリソースサーバーにデータを要求する
- この際に、アクセストークンを作りWebサービスやアプリにトークンを発行する認可サーバーがトークンを受け渡す
- Webサービスやアプリは認可サーバーから得たトークンをリソースサーバーに提示し、リソースサーバーはそのリクエストに含まれるトークンを取り出し、ユーザーデータを利用する権限があるかどうかを判断する
- 必要な権限があることを確認したリソースサーバーは、Webサービスやアプリが要求しているユーザーデータを受け渡す
言葉として説明すると案外簡単な仕組みですね。この一連の流れを標準化したのがOAuthというわけです。
ソーシャルログインではどのようなユーザーデータが扱われる?
日本では現在、さまざまなSNSが利用されています。ちなみにSNS別ユーザー数を見てみますと、以下のようになります。
LINE
月間アクティブユーザー数:8,200万人
月間アクティブユーザー率:86%
・「参考サイト」
月間アクティブユーザー数:2,600万人
月間アクティブユーザー率:56.1%
・「参考サイト」
月間アクティブユーザー数:3,300万人
月間アクティブユーザー率:84.7%
月間アクティブユーザー数:4,500万人
月間アクティブユーザー率:70.%
・「参考サイト」
月間アクティブユーザー数(世界):1億600万人
・「参考サイト」
ご覧のように、日本で最も使われているSNSはLINEです。もっとも、SNSというより無料コミュニケーションツールとしての側面が強いでしょう。そしてソーシャルログインに最も使われているSNSアカウントもまたLINEです。次いで多く使われているのがYahoo! Japan IDです。実は、ソーシャルログインで使われるアカウントはSNSに限らず、Yahoo! Japan IDやGoogleアカウントなどWebサービスを使用するためのアカウントも含まれます。
出典:「フィードフォース、ソーシャルログイン利用状況調査2019を発表~過去1年間で最も多く利用されたのはLINEログインが56.1%で初のトップに~」
各SNS・Webサービスアカウントに登録されているユーザーの個人情報はそれぞれ違います。ただし一般的にソーシャルログインで利用される個人情報は「氏名」「メールアドレス(アカウントID)」「パスワード」の3点なので、多くのSNS・Webサービスはこれらの情報が事前に登録されています。
また、ソーシャルログインで利用される個人情報は登録するWebサービスやアプリによって違います。メールアドレスとパスワードだけの場合もあれば、住所を登録しなければいけない場合もあります。多くのソーシャルログインでは住所などの個人情報は取得できないようになっていますが、SNSやWebサービスによっては審査を経て許可されることもあります。ちなみに審査とは、ソーシャルログインを実装しているWebサービスやアプリが、SNS・Webサービス運営会社に要請するものです。
ソーシャルログインを導入する2つの方法と重要なポイント
Webサービスやアプリのソーシャルログインを導入するには、大きくわけて2つの方法があります。
各SNS・Webサービスに合わせたAPIを個別に開発する
ソーシャルログインは基本的に各SNS・Webサービスが提供しているAPIを使い、公開されているドキュメントを参考にしながら独自に開発することが可能です。ただ、独自家発の際は以下のポイントに留意しなければいけません。
- ソーシャルログイン導入後も、各SNS・Webサービスが行う仕様変更などの更新情報をキャッチし、対応する必要がある
- 複数のSNS・Webサービスに対応する場合は対応した分の開発とメンテナンスを行う必要がある
- 会員登録機能やログイン機能、連携機能や連携解除、退会手続きなど会員機能の設計に合わせた開発が必要になる
ソーシャルログインの外部サービス(ASP)を活用する
外部サービス(ASP)を利用することで、個別開発するよりも限りなく負担を少なくしてソーシャルログインを導入できます。複数のSNS・Webサービスに一括で対応可能なことや、面倒なメンテナンス作業が不要なことなどメリットが多いです。その反面、月額費用が継続的にかかるなど留意すべきポイントもあります。
いかがでしょうか?ソーシャルログインはユーザーの利便性を高め、Webサービスやアプリのリピート率を上昇するための基本的施策として拡大しています。また、SNS等に備わっているセキュリティ機能を利用することで、ユーザーも安心して利用できるため信頼感も得られます。まだソーシャルログインに対応していない場合は、この機会にぜひ検討してみてださい。