SSO(Single Sign-On)とは?
SSO(シングルサインオン) は、1回のログインで複数のサービスにアクセスできる認証方式です。たとえば、GoogleアカウントでGmail、Google Drive、YouTubeにログインするように、一度の認証で複数のサービスにアクセス可能 になります。
図でわかるSSOの仕組み(7ステップ解説)
以下の図は、SSOの基本的な認証フローをわかりやすく表しています。
登場する主な構成要素
- ユーザー(User):サービスにアクセスしようとする人
- サービスプロバイダ(Service Provider):利用したいサービス(例:アプリやWebサービス)
- アイデンティティプロバイダ(Identity Provider):ユーザーの認証情報を管理するシステム(例:Google, Microsoftなど)
認証フロー(図の番号に対応)
-
ユーザーがサービスにアクセスを要求
- 例:ユーザーが「Service Provider 1」にアクセス。
-
サービスプロバイダが認証要求をアイデンティティプロバイダにリダイレクト
- セッションが存在しない場合、ログインが必要。
-
ユーザーがアイデンティティプロバイダにリダイレクトされる
-
ユーザーが認証情報(ID・パスワードなど)を入力
-
アイデンティティプロバイダが認証情報を検証
- データベースなどでユーザー情報を確認。
-
認証が成功するとトークンが発行され、サービスプロバイダへ送信
-
トークンを受け取ったサービスプロバイダがユーザーにアクセスを許可
これで、ユーザーは再ログインなしに他のサービスプロバイダ(例:Service Provider 2)にもアクセス可能となります(すでに認証済みだから)。
SSOのメリット
-
ユーザーにとっての利便性向上
毎回ログインする手間がなくなり、業務効率が向上します。 -
セキュリティの向上
パスワードの使い回しを防げるほか、集中管理によりセキュリティポリシーを一元化できます。 -
管理者側の負担軽減
ID・パスワード管理の一元化で、パスワード忘れなどの対応が減少。
注意点・デメリット
- アイデンティティプロバイダに障害が起こると全サービスに影響
- 認証が突破されると、すべてのサービスに不正アクセスされる可能性
これらを補うためには、**多要素認証(MFA)**の併用が推奨されます。
まとめ
SSOは、現代のクラウドサービス利用において欠かせない認証方式のひとつです。便利で効率的ですが、セキュリティ設計と組み合わせて使うことが重要です。