結論: **SSO(シングルサインオン)は、1回のログインで、複数のサービスを使える仕組みです。本人確認を行う認証の窓口(IdP)**が、各サービスに「この人は確認済み」と伝えます。パスワードが減り、退職者のアカウントも一括で止められるのが利点です。一方で、窓口が乗っ取られると、全サービスに入られるため、多要素認証は必須です。
SSOとは
SSOは、Single Sign-On(シングル・サインオン)の略です。サービスごとに、ID・パスワードを入力する代わりに、1回の本人確認で、複数のサービスに入れるようにします。
会社で、メール、チャット、勤怠管理、経費精算など、複数のクラウドサービス(SaaSとは)を使う場合に、よく使われます。
仕組み:認証の窓口が「確認済み」を伝える
登場するものは、2つです。
| 役割 | 名前 | 内容 |
|---|---|---|
| 認証の窓口 | IdP(Identity Provider) | 本人確認を行い、「確認済み」の証明を発行する |
| 利用するサービス | SP(Service Provider) | 証明を確認して、ログインを許可する |
サービスは、パスワードそのものを受け取りません。窓口が出した「確認済みの証明」を、信頼して受け入れます。証明のやり取りには、SAMLやOpenID Connectといった、共通の約束が使われます。OpenID Connectは、OAuthとはの仕組みを土台にしています。
証明は、一定時間だけ有効なものが使われ、セッションやトークンの考え方と関係します。
メリット
① パスワードが減る
サービスごとのパスワードを覚えたり、使い回したりしなくて済みます。使い回しによる被害(クレデンシャルスタッフィングとは)を減らせます。
② 退職者・異動者のアカウントを、一括で止められる
サービスごとに、アカウントを個別に消すと、消し忘れが起きやすくなります。支援先でも、退職者のアカウントが残ったままになっていたり、1つのアカウントを複数人で使い回していたりする状態は、よく見かけます。SSOなら、窓口のアカウントを止めることで、つながるサービスへの入口を、まとめて閉じられます。
③ 多要素認証を、一か所で強制できる
サービスごとに、多要素認証を設定する代わりに、窓口で、1回、強い認証を求められます。二段階認証とパスキーの考え方も、窓口に集められます。
④ ログインの記録が集まる
「誰が、いつ、どのサービスに入ったか」を、窓口で確認しやすくなります。
リスクと注意点
| リスク | 内容 | 対策 |
|---|---|---|
| 窓口の乗っ取り | 窓口のアカウントを奪われると、つながる全サービスに入られる | 多要素認証(できればパスキー)、強いパスワード |
| 窓口の障害 | 窓口が止まると、各サービスにログインできない | 障害時の手順、緊急用アカウントを決めておく |
| 設定の誤り | 誰がどのサービスを使えるか、の設定ミス | 権限の定期的な見直し(最小権限の原則) |
| SSO非対応のサービス | 一部のサービスは、SSOにつなげない | 別管理になるため、一覧にして把握する |
SSOは、守りを一か所に集めるため、その一か所を特に強く守る必要があります。
SSOとよく混同される言葉
| 言葉 | 内容 |
|---|---|
| ソーシャルログイン | 個人が、GoogleやAppleなどのアカウントで、別のサービスに入る仕組み |
| パスワード管理ツール | パスワードを安全に保管し、入力を助ける。サービス側の認証は、別々のまま |
| 多要素認証 | ログインの確認を、2つ以上の方法で行う。SSOと組み合わせて使う |
| ゼロトラスト | 「社内だから安全」とせず、常に確認する考え方。SSOは、その部品の1つ(ゼロトラストとは) |
導入を考える時の目安
- 使うクラウドサービスが、5〜10個を超えてきた
- 退職者のアカウントの消し忘れが、心配になってきた
- 各サービスの多要素認証を、統一して強制したい
- 利用状況を、まとめて確認したい
まだ小さな組織は、使っているサービスの一覧を作り、各サービスの多要素認証を有効にするところから始められます。野良のクラウドサービスの管理は、シャドーITとはも参考にしてください。
まとめ
- SSOは、1回の本人確認で、複数のサービスに入れる仕組み。**認証の窓口(IdP)**が「確認済み」を伝える
- パスワードの減少・退職者アカウントの一括停止・多要素認証の一元化が利点
- 窓口が乗っ取られると、全サービスに入られるため、窓口の多要素認証は必須
- 障害時の手順と、SSOにつなげないサービスの把握も、忘れない
関連記事:OAuthとは、二段階認証とパスキー、最小権限の原則、ゼロトラストとは、SaaSとは
あわせて読みたい:JWT(JSON Web Token)とは