SSO(シングルサインオン)とは?仕組み・SAML・OIDCの違いをわかりやすく解説

SSOとは?一言でいうと「1回のログインで全サービスを使える仕組み」

SSO(Single Sign-On/シングルサインオン)は、一度の認証で複数のサービスやアプリケーションにアクセスできる仕組みです。たとえば、GoogleアカウントにログインするだけでGmail、Google Drive、YouTubeなどすべてのGoogleサービスが使えるのは、SSOが機能しているからです。

日常で例えるなら、テーマパークの入場チケットのようなものです。入口ゲートで一度チケットを見せれば、園内のどのアトラクションにも並ぶだけで乗れる——SSOは「入口ゲートでの認証」に相当します。

SSOがない世界の課題

企業のIT環境では、社員が日常的に使うサービスは10〜20種類にのぼることも珍しくありません。SSOがない場合、以下の問題が発生します。

課題 具体的な影響
パスワード疲れ サービスごとに異なるID/パスワードの管理が必要で、メモ書きや使い回しが横行する
セキュリティリスク パスワードの使い回しにより、1つのサービスが漏洩すると他も危険に
IT部門の負荷 パスワードリセット対応がヘルプデスク問い合わせの20〜50%を占める
生産性の低下 ログイン作業だけで1日数分〜数十分を浪費

SSOの主要な実現方式

1. SAML(Security Assertion Markup Language)

SAMLは企業向けSSOの標準プロトコルです。XMLベースでやり取りされ、主にWebブラウザを介した認証に使われます。

登場人物は3つ:ユーザー、IdP(Identity Provider:認証を管理するサーバー)SP(Service Provider:利用したいサービス)。ユーザーがSPにアクセスすると、IdPにリダイレクトされて認証を行い、認証済みの「アサーション」をSPに渡すことでログインが完了します。

2. OpenID Connect(OIDC)

OIDCはOAuth 2.0をベースにした認証プロトコルで、SAMLよりも軽量かつモダンです。JSONベースで、モバイルアプリやSPAとの相性が良いのが特徴です。「Googleでログイン」「GitHubでサインイン」はOIDCで実現されています。

3. Kerberos

Kerberosは社内ネットワーク(オンプレミス)向けの認証方式で、Active Directoryの基盤技術です。「チケット」と呼ばれる認証情報を発行し、社内の各サーバーにパスワードなしでアクセスできます。

SAML vs OIDC:どちらを選ぶ?

比較項目 SAML 2.0 OpenID Connect
データ形式 XML JSON(JWT)
主な用途 エンタープライズ向けWebアプリ Webアプリ+モバイル+SPA
実装の容易さ やや複雑 比較的シンプル
モバイル対応 不向き ネイティブ対応
採用例 Salesforce、AWS、社内業務システム Google、GitHub、LINE
歴史 2005年〜(成熟) 2014年〜(新しい)

判断の目安:既存のエンタープライズシステム連携にはSAML、新規のWebサービスやモバイルアプリにはOIDCが適しています。多くの企業では両方を併用しています。

代表的なSSO製品・サービス

サービス名 特徴 向いている規模
Okta クラウドIdPの最大手。7,000以上のアプリと事前連携済み 中〜大企業
Azure AD(Entra ID) Microsoft 365と統合。Windows環境との親和性が高い Microsoft環境の企業
Auth0 開発者向け。カスタマイズ性が高い スタートアップ〜中規模
Keycloak オープンソースのIdP。自社運用したい場合に 技術力のある組織

SSO導入時の注意点

単一障害点(SPOF)のリスク

IdPがダウンすると全サービスにログインできなくなります。IdPの冗長化・高可用性構成は必須です。

セキュリティ強化はセットで考える

SSOは利便性を高めますが、「1つの認証が突破されるとすべてにアクセスされる」リスクも生みます。多要素認証(MFA)との組み合わせが不可欠です。

段階的な導入が重要

全サービスを一度にSSO化するのではなく、主要サービスから段階的に対応していくのが現実的です。レガシーシステムはSAMLやOIDCに対応していない場合もあります。

よくある質問(FAQ)

Q. SSOとパスワードマネージャーの違いは?

パスワードマネージャーは各サービスのパスワードを保存・自動入力するツールで、認証自体は個別に行います。SSOは認証そのものを一元化する仕組みで、根本的にアプローチが異なります。

Q. SSOを導入するとパスワードは不要になりますか?

IdPへのログインにはパスワード(またはMFA)が必要ですが、各サービスごとのパスワードは不要になります。さらに、FIDO2/WebAuthnと組み合わせれば、IdPへのログインもパスワードレスにできます。

Q. 個人でもSSOは使えますか?

はい。「Googleでログイン」「Appleでサインイン」などのソーシャルログインは、消費者向けのSSO実装です。GoogleやAppleがIdPの役割を果たしています。

まとめ:SSOは利便性とセキュリティを両立する認証基盤

SSOは、1回の認証で複数のサービスにアクセスできる仕組みで、パスワード管理の負荷軽減とセキュリティ向上を同時に実現します。SAML(エンタープライズ向け)とOIDC(モダンアプリ向け)の2つの主要プロトコルを理解し、MFAと組み合わせて導入するのがベストプラクティスです。

コメント