シングルサインオンの実現方式は複数あり、それぞれ仕組みに違いがあります。この記事では、そんなシングルサインオンの実現方式と仕組みについてまとめた後、メリット・デメリットを解説します。シングルサインオンの導入を検討している場合は、ぜひ製品選びにお役立てください。
シングルサインオンとは
シングルサインオン(SSO)とは、言葉の通り1組のID・パスワードでログインすると、複数のシステムにログインできる技術のことです。
さまざまな業務がシステム化する中で、システムごとに認証していると非常に手間がかかり、認証情報の管理も煩雑になります。しかし、複数システムでIDとパスワードを使いまわすと、「リスト型アカウントハッキング」の標的となったときに被害が拡大するため危険です。
シングルサインオンは、システムごとに異なる認証情報を内部で管理しつつ、統一の認証情報ですべてのシステムにログインできるようにサポートします。このように、シングルサインオンは認証情報の管理をシンプルにしながら、リスト型アカウントハッキングの被害に遭わない対策として有効です。
シングルサインオンの6方式と仕組み
シングルサインオンには、6つの実現方式があり、それぞれ利用できる形態に違いがあります。以下は、シングルサインオンの実現方式とエージェントの要・不要、利用できる形態をまとめた一覧表です。
方式 | エージェント (要・不要) |
利用できる形態 |
---|---|---|
エージェント方式 | 要(Webアプリケーションサーバー側) | オンプレミスのWebシステム |
リバースプロキシ方式 | 要(リバースプロキシサーバー) | オンプレミスのWebシステム |
代理認証方式 | 要(クライアントPC側) | クライアントサーバー方式、オンプレミスのWebシステム |
フェデレーション方式 | 不要 | クラウドサービス |
透過型方式 | 要(代理認証かエージェントかを選べる) | 透過型に対応していればどの提供形態でも利用可 |
ケルベロス認証 | 不要 | オンプレミスのシステム全般 (ドメイン外のクラウドサービスなどとは同時にシングルサインオンができない) |
これらの実現方式の仕組みについて簡単に説明します。
1、エージェント方式
Webシステム側にエージェントを配置する方式です。エージェントは、ログイン情報を受け取るとシングルサインオンサーバーに問い合わせます。認証が成功するとcookieを受け取り、cookieを利用してシングルサインオンを実現します。
認証する際、特定のサーバーに負荷がかからない点はメリットです。一方、利用するWebシステム側すべてにエージェントを配置し、メンテナンスを行う手間がかかるデメリットもあります。
2、リバースプロキシ方式
リバースプロキシサーバーにエージェントを配置する方式です。認証時はすべてリバースプロキシサーバーを通す形になり、管理工数がかからない点がメリットです。ただし、認証の処理がリバースプロキシサーバーに集中し、通信速度面でボトルネックになりやすい点がデメリットとなります。
3、代理認証方式
クライアントPCにエージェントを導入し、ログインを代理で行う仕組みです。サーバー側には何もインストールする必要がなく、Webシステムやクライアントサーバー方式のシステムでも使えます。クライアントPCのメンテナンス工数がかかる点がデメリットです。
4、フェデレーション方式
フェデレーション方式とは、クラウドサービスで利用できるシングルサインオンの実現方式で、SAML(Security Assertion Markup Language)というXMLをやり取りします。
ユーザー(ブラウザ)からはIDとパスワードをサービスプロバイダ(利用したいシステム)に渡し、サービスプロバイダはSAMLを生成してIdP(シングルサインオンサービス)に送信。IdPから認証成功というレスポンスを受けると、サービスプロバイダはユーザーのログインを許可します。
5、透過型方式
ネットワークを監視して、ユーザーがシステムにアクセスする際に認証情報をシステム側に送信する方式です。本方式に対応していれば、オンプレミス・クラウドなど提供形態に関係なく利用できます。
6、ケルベロス認証
ID・パスワードを受け取り、初回のログイン時にのみ認証チケットを発行します。その後は、認証チケットを利用してログインをする仕組みです。
ドメイン内のシステムでケルベロス認証に対応しているシステムなら、どれでも対応できます。ただし、ドメイン外にあるクラウドサービスなどのシステムとは同時にシングルサインオンできません。
シングルサインオン導入のメリット4つ
シングルサインオンを導入するとさまざまなメリットがあります。ここでは、主なメリットを4点取り上げて解説します。
1、ログインの利便性が向上する
複数システムはシームレスに連携している場合もあるのですが、違うシステムに制御が移るたびにログインを求められると不便に感じてしまいます。シングルサインオンを導入する最大のメリットは、このように何回もログインしなおす必要がなくなり、ログインの利便性が向上する点です。
2、セキュリティが高まる
ひとつのIDとパスワードを管理するだけで済むため、複雑なパスワードを設定するよう、シングルサインオンのセキュリティポリシーを決めることできます。予測されにくい複雑なパスワードを設定すると、パスワードクラッキングの被害を抑制し、セキュリティを高められます。
3、パスワード管理作業が軽減する
システム管理者のメリットとして、多数のシステムの管理運用コストが軽減される、というメリットもあります。認証に関する問題や、人事異動などによるアカウント更新も、シングルサインオンシステムのメンテナンスだけになり管理が楽です。
従業員側のメリットとしても、多数の認証情報(ID・パスワード)の管理をしなくて済む点が挙げられます。多数の認証情報を管理しきれず、IDやパスワードを使いまわす、というセキュリティ的に問題のある行為をしてしまうこともありません。
4、低コストで短期導入ができる
シングルサインオンシステムは、既存システムを改修することなく外部システムと連携できるような工夫がなされています。低コストで短期導入がしやすい点も、メリットのひとつです。
シングルサインオン導入のデメリット3つ

メリットの多いシングルサインオンですが、導入によるデメリットもあります。デメリットによりどのような影響があり、どう対策するかも考えておきましょう。
1、1つのパスワード漏洩による被害が大きい
シングルサインオンで用いている認証情報自体が情報漏洩してしまうと、複数システムの認証情報まで被害が及ぶ可能性があります。
シングルサインオン自体のセキュリティをより強固にするための対策方法としては、初回ログインを二段階認証や多要素認証にする対策が有効です。認証段階でのセキュリティを高めることで、より安全にシングルサインオン機能を利用できます。
二段階認証とは、ID・パスワードによる認証に加えて他の認証(秘密の質問や認証コードなど)の二段階で認証する方式のことです。
多要素認証とは、知識情報(IDとパスワード)・所持情報(スマートフォンへの認証コード送信やワンタイムパスワード)・生体情報(指紋や顔など)の3要素を組み合わせる認証方式を指します。
2、障害発生時すべてのシステムが利用できなくなる
シングルサインオンシステムに障害が発生すると、すべてのシステムにログインできなくなる点もデメリットのひとつです。シングルサインオンシステムの障害にいち早く対応できる社内の体制づくりか、すぐにサポート窓口に連絡できる連絡体制が重要となります。
3、対応していないシステムもある
シングルサインオンシステムを適用できないシステムやクラウドサービスもあります。自社で利用するシステムやクラウドサービスがどこまでシングルサインオン化できるのか、十分な事前調査が必要です。
最近では、IDaaS(Identity as a Service)という、シングルサインオンを含めたID統合管理のクラウドサービスが注目されています。
IDaaS製品の中には、オンプレミス・クラウド両方のID管理を統一化できる製品もあります。自社環境がオンプレミス・クラウド混合の環境になっている場合は、IDaaS製品も視野に入れてみてください。
シングルサインオンの仕組みを知り適切な方式を選ぼう
シングルサインオンは、複数システムのログインを1回で済ませることができる便利な仕組みです。パスワードの管理がシンプルになることで、従業員にもシステム管理者にも多くのメリットがあります。
ただし、自社で使用しているシステムやクラウドサービスすべてが対応しているシングルサインオン製品があるかどうかを、調査する必要があります。シングルサインオンの仕組みを知り、自社の環境に適切な方式は何かを確認してから、製品選定に入ることをおすすめします。