「シングルサインオン(SSO)」という言葉は企業システム・クラウドサービスの文脈でよく聞かれます。
「SSOって何をすること?」「SAMLとの関係は?」「どんな仕組みで動いているの?」と疑問に感じる方も多いでしょう。
本記事では、シングルサインオンの意味・仕組み・SAMLとの関係・Google SSOの具体例まで、わかりやすく解説していきます。
SSOを理解したい方・企業での導入を検討している方はぜひ最後までご覧ください。
シングルサインオンとは?意味と基本的な仕組み
それではまず、シングルサインオンの基本的な意味と仕組みについて解説していきます。
シングルサインオン(Single Sign-On、SSO)とは、1回のログインで複数のシステム・サービスにアクセスできる認証の仕組みのことです。
たとえば、会社のパソコンにログインするだけで、メール・グループウェア・人事システム・経費精算システムなど複数のサービスに個別のパスワード入力なしでアクセスできる状態がSSOです。
【SSOなし vs SSOあり】
SSOなし:サービスA・B・Cそれぞれに別のID/パスワードでログイン
SSOあり:1回のログインでサービスA・B・C すべてにアクセス可能
SSOによりユーザーの利便性向上・パスワード管理の簡略化・セキュリティの一元管理が実現します。
SSOの主要な登場人物(IdPとSP)
SSOの仕組みを理解するために、主要な登場人物を確認しましょう。
IdP(Identity Provider、アイデンティティプロバイダー):ユーザーの認証を担当するサーバー・サービス。例:Okta・Azure AD・Google Workspace・ADFS。
SP(Service Provider、サービスプロバイダー):SSOを通じてアクセスされるサービス・アプリケーション。例:Salesforce・Slack・Box・kintone。
ユーザー(エンドユーザー):SSOでログインして各サービスを利用する人。
「IdPで一度認証→SPへのアクセス時はIdPの認証情報を使う」という流れがSSOの基本です。
SSOの基本的な認証フロー
【SSOの基本的な認証フロー(SAMLの場合)】
①ユーザーがSP(例:Salesforce)にアクセス
②SPがユーザーをIdP(例:Okta)にリダイレクト
③ユーザーがIdPにログイン(ID/パスワード・多要素認証)
④IdPが認証成功を示すSAMLアサーション(XMLトークン)を発行
⑤ユーザー(ブラウザ)がSAMLアサーションをSPに送信
⑥SPがSAMLアサーションを検証してアクセスを許可
⑦ユーザーはSPにログイン完了(以降はSSOセッションでアクセス可能)
SSOで使われる主なプロトコル
SSOに使われる主なプロトコルは次のとおりです。
| プロトコル | 特徴・用途 |
|---|---|
| SAML 2.0 | エンタープライズSSOの標準。XML形式のトークン |
| OAuth 2.0 | 認可(Authorization)に使われるプロトコル |
| OpenID Connect(OIDC) | OAuth 2.0上の認証(Authentication)プロトコル。JSONトークン |
| Kerberos | Active DirectoryでのWindowsドメインSSO |
| LDAP | ディレクトリサービスを使った認証 |
エンタープライズ系はSAML 2.0、モバイル・WebアプリはOIDC(OpenID Connect)が主流です。
SAMLとは何か?SSOとの関係
続いては、SAMLとSSOの関係を確認していきます。
SAML(Security Assertion Markup Language)とは、SSOを実現するためにIdPとSP間で認証情報(アサーション)をXMLで交換するための規格です。
SAML 2.0はOASISが策定した標準規格で、多くのエンタープライズSSOで使われています。
SAMLアサーションには「ユーザーID」「認証した時刻」「アクセスを許可される期間」「ユーザー属性(メールアドレス・グループなど)」が含まれます。
SAMLはSSOのためのプロトコルであり、SSOの実現手段のひとつという関係です。
Google SSOの仕組みとOIDC
続いては、私たちがよく使うGoogle SSOの仕組みを確認していきます。
「Googleでサインイン」の仕組み(OIDC)
「Googleアカウントでログイン」ボタンを使ったSSOはOAuth 2.0とOpenID Connectを組み合わせた仕組みです。
ユーザーがGoogleにログイン済みであれば、対応するアプリ・サービスにGoogleアカウントの情報でシームレスにログインできます。
JWTトークン(JSON Web Token)という形式で認証情報が渡されます。
SNSログイン(Googleログイン・LINEログイン・Appleでサインイン)はすべてOIDC/OAuthベースのSSOです。
Active Directory・Azure ADとのSSO連携
企業環境では、Active Directory(AD)・Azure AD(Microsoft Entra ID)をIdPとして使ったSSOが広く使われています。
Windowsドメインユーザーがドメインにログインした時点でKerberosチケットが発行され、社内のシステムへのアクセスが可能になります。
クラウドサービスとのSSO連携はSAMLまたはOIDC経由で行われます。
SSOの導入と管理のポイント
続いては、SSOの導入と管理のポイントを確認していきます。
IdPの選び方
主なIdP製品の特徴を簡単に比較します。
| IdP | 特徴 |
|---|---|
| Okta | SaaS特化・連携アプリ数が最大・使いやすい管理画面 |
| Azure AD(Entra ID) | Microsoft 365との親和性が高い・大企業向け |
| Google Workspace | Googleアプリとの連携が強力・使いやすい |
| OneLogin | コストパフォーマンス良好・中規模企業向け |
既存の基盤(Microsoft 365・Google Workspaceなど)との連携を優先してIdPを選ぶのが一般的です。
SSOのセキュリティ考慮点
SSOはIdPが単一障害点(SPOF)になるため、IdPの冗長化と可用性確保が重要です。
SSOに多要素認証(MFA)を組み合わせることで、万が一IdPのパスワードが漏洩しても不正アクセスを防げます。
SSO + MFA の組み合わせはゼロトラストセキュリティの基本的な構成です。
まとめ
本記事では、シングルサインオンの意味・仕組み・IdPとSPの役割・認証フロー・SAMLとの関係・Google SSOのOIDC・導入のポイントまで詳しく解説しました。
SSOとは1回のログインで複数サービスにアクセスできる認証の仕組みで、SAML・OIDCなどのプロトコルで実装されます。
SSOの導入によってユーザーの利便性・セキュリティ管理・IT管理者の運用効率が大幅に向上します。
ぜひ本記事を参考に、SSOの理解と導入に役立ててみてください。