シングルサインオン(SSO)が支える共通認証の仕組み
〜一度のログインでサービスをつなぐ共通認証〜
導入:サービスを横断して「一度の認証」で使える体験
Webサービスやスマホアプリを利用する際、そのたびにIDやパスワードを入力する作業は、利用者にとって大きな負担になります。
特に複数のサービスを日常的に使う現代では、「またログインか」と感じた経験がある方も多いのではないでしょうか。
この負担を解消し、「一度の認証で複数のサービスを安全に使える」体験を実現する仕組みが、シングルサインオン(Single Sign-On:SSO)です。
本記事では、GoogleやNetflixといった身近なサービスを例にSSOの本質を整理し、Webサービスやスマホアプリを横断してどのように「共通の認証」が成立しているのかを、概念と構造の両面から解説します。
第一章:シングルサインオン(SSO)がもたらすユーザー体験
SSOとは、「認証を一元化する仕組み」です。
ユーザーは一度だけログインを行い、その認証結果を複数のサービスで共有できます。
代表例がGoogleアカウントです。
Gmailにログインしていれば、同じブラウザ上でYouTubeやGoogle Driveを開いた際も、あらためてIDやパスワードを入力することなく利用を開始できます。
利用者は「一度ログインしただけで、他のサービスもそのまま使える」というシームレスな体験を得られます。
Netflixの場合も考え方は同じです。
スマホアプリを使っているとき、「ログイン」や「会員情報」などをタップすると、一度ブラウザの画面に切り替わってNetflixのログイン画面が表示されることがあります。
このとき、もしそのブラウザですでにNetflixにログインしたことがあれば、あらためてIDやパスワードを入力しなくても、そのまま認証が完了します。
そして認証が終わると、自動的に元のアプリ画面に戻り、アプリの中でも「ログイン済み」として扱われ、そのまま動画を再生できる状態になります。
つまり利用者の目線では、
- ブラウザで一度ログインしただけなのに
- アプリに戻ったら、いつの間にかログインが済んでいる
という体験になります。
ここまでが、私たちが実際に目にするSSOの挙動です。
では、この一見シンプルな体験は、どのような仕組みによって支えられているのでしょうか。
第二章:SSOを支える「共通認証システム」の役割
この仕組みの中核にあるのが、複数のサービスから共通して利用される共通認証システムです。
ID/パスワードの検証、ログイン状態の管理といった処理は、各サービスが個別に行っているのではなく、この共通認証システムに集約されています。
Webサービスやスマホアプリの役割分担を整理すると、次のようになります。
| 役割 | 担当する仕組み | 具体的な内容 |
|---|---|---|
| 本人確認(認証) | 共通認証システム | ID・パスワード検証、ログイン可否の判定 |
| 認証状態の発行 | 共通認証システム | セッションやトークンの発行 |
| 認証結果の利用 | Webサービス/スマホアプリ | 「ログイン済みか」を確認し、画面表示や機能制御を行う |
つまり、
- 認証はすべて共通認証システムが担い
- 各サービスは、その認証結果を検証して利用するだけ
という役割分担が行われています。
この構成によって、
- 認証処理を一か所で集中管理できる
- セキュリティポリシーを全サービスで統一できる
- 利用者は何度もログインし直す必要がなくなる
といった効果が生まれます。
このようにSSOとは、ログインの仕組みを一つにまとめ、その結果を複数のサービスで安全に使い回せるようにする考え方と捉えることができます。
第三章:スマホアプリにおけるSSOの考え方
WebサービスにおけるSSOは、同じブラウザ内で認証情報(ログイン状態)を共有することで成立しますが、スマホアプリにおけるSSOでは、Webサービスで行った本人確認の結果を、スマホアプリ側でも安全に受け取って利用できるようにする必要があるという点が違いの一つになります。
例えばNetflixやHuluのような動画配信サービスでは、Web上でログインを完了したあと、その完了画面をきっかけにスマホアプリが自動的に起動し、あらためてIDやパスワードを入力しなくても、そのまま視聴を開始できる体験が提供されています。
このように一見するとシームレスに連携しているように見えますが、その裏側では、Webサービスとスマホアプリという異なる環境の間で認証結果を受け渡すための仕組みが必要になります。
具体的には、Web上でログインが完了したあと、その完了画面からスマホアプリを自動的に起動し、認証結果を安全に引き渡すための仕組みが求められる、ということです。
このWebサービスとスマホアプリの境界をまたぐ連携を成立させる代表的な技術が、次回詳しく解説するディープリンクです。
まとめ:共通認証がもたらすシンプルなログイン体験
シングルサインオン(SSO)は、認証を共通の仕組みに集約することで、セキュリティと利便性を同時に高める設計思想です。
一度のログインで複数のWebサービスやスマホアプリを利用できる体験は、共通認証システムと、その結果を安全に引き渡す仕組みによって支えられています。
今回は、シングルサインオン(SSO)が支える共通認証の仕組みについてご紹介しました。
次回は、SSOをスマホアプリで成立させるための鍵となる「ディープリンク」の仕組みと実装について、詳しく解説します。
次回の更新もお楽しみに。
導入実績:https://arches.co.jp/works/single_signon_experience
お問い合わせ
ARCHESでは、アプリの企画・設計・開発・運用まで、 一貫した体制でサポートを行っています。開発に関するご相談は下記ページからお気軽にご相談ください。