SSO(シングルサインオン)とは

SSOとは、シングルサインオン(Single Sign-On)の略であり、ユーザーが1つのログイン情報を使って複数のアプリケーションやサービスにアクセスできるようにする仕組みです。一度認証を受けてしまえば、別のサービスを利用する際に追加の認証は不要となります。SSOツールを導入することで、ユーザーはシステムごとに異なる複雑なパスワードを手入力する必要がなくなります。管理者は、パスワードリセットなどの業務を行う頻度が減り、本来するべき業務により時間を費やすことができるようになります。

リモートワークなどで働き方が多様化した昨今、SSOツールを導入する企業が増えています。

SSOの概略図。1つのログイン情報から複数のサービス、アプリケーションにログインをすることができる。

このページでは、なぜSSOが必要なのかや、SSOのメリット、デメリット、SSOの仕組みや認証方式について紹介をしていきます。

なぜSSOが必要なのか

SSOサービスの導入の背景には、各企業が抱えるID/パスワードに関する問題があります。企業が抱える課題としてよくあるものが以下のようなものです。

  • セキュリティへの意識の低い社員のパスワードの使い回し
  • 業務効率の低下
  • 管理者の負担増大

業務で利用するサービスにはIDとパスワードによる認証が必要となります。利用するサービスの数が増えれば増えるほど、覚える必要のあるパスワードは増えていきます。一方で人間が覚えることのできるパスワードは平均で3個程度と言われています。覚えるべきパスワードの数が膨大なため、覚えきれずパスワードを使いまわしてしまうケースがあります。パスワードの使いまわしをしてしまうと、あるサービスで漏えいしてしまったパスワードを不正利用されてしまい情報漏えい等のリスクも増えてしまいます。

業務で利用するサービスすべてでIDパスワードによる認証を求めていては、ログインの手間が逐一発生してしまい業務効率の低下に繋がります。

ユーザーが利用するサービスごとにパスワードを変更していたとしても、覚えられるパスワードの量には限界があります。ユーザーがパスワードを忘れてしまった場合、IT管理者に対してパスワードリセットなどの対応を求められます。サービスごとにパスワードリセットのプロセスは異なるため、対応プロセスが複雑になりがちです。

SSOを導入するメリット

SSOサービスを導入することにより得られるメリットとしては以下のようなものが挙げられます。

  • セキュリティの強化
  • ユーザーの負荷の軽減
  • 管理者の負担軽減

それぞれについて詳しく説明します。

セキュリティの強化

多くのWeb・クラウドサービスではIDとパスワードでの認証をすることでログインが可能です。業務を行う上で利用するクラウドサービスの数が多くなるにつれて、管理するパスワードの数は増えていきます。また、最近ではWeb・クラウドサービスが要求するパスワード要件も厳しくなっています。すると、ユーザーはパスワードの使い回しやメモに書くなどして他人から確認できる状態にしてしまうことがあります。SSOツールを導入すると、IDとパスワードを覚える量を1つに減らすことができます。これにより、不正ログインを防ぐことができます。

ユーザーの負荷の軽減

SSOツールを使うことで、ユーザーは利用するサービスごとにログインをする必要がなくなります。複数のサービスやシステムを利用していると、利用するサービスの数だけID・パスワードを入力しなければなりません。一方で、SSOツールを導入すれば、1度のログインで複数のサービスへログインできるようになり、ユーザーの負担を大幅に軽減できます。

管理者の負担軽減

SSOツールを導入すると、ユーザーが覚えるパスワードは1つに減るためパスワード紛失の頻度は減り、対応プロセスもSSOツールのパスワードリセットのみに絞ることができるため簡素化することができます。

ペンティオが提供しているOneLoginでは、6000以上のアプリケーションに対してSSOすることが可能です。また、日本のクラウドサービスにSSOするためのコネクタも独自に作成・提供しています。

SSOのデメリット

続いて、SSOのデメリットについて紹介をしていきます。

  • 攻撃者がSSOサービスへとアクセスしてしまった場合、業務で使うすべてのサービスへとアクセス可能となってしまう
  • SSOサービスに不具合が生じた場合、ユーザーは業務で使用するアプリケーションへログインできなくなってしまう

SSOツールの導入に伴い生じるデメリットには、多要素認証(MFA)などによるセキュリティの強化が有効です。ペンティオが提供しているOneLoginでは、18種のMFAに対応しています。ユーザーごとに最適なMFAを選択可能であり、ユーザーの利便性を損なうことなくセキュリティ強度を上げることが可能です。

SSOの仕組み・認証方式

SSOとは単一の仕組みを指しているのではなく以下の4つの方式に分類することができます。

  1. フェデレーション方式
  2. IDパスワード認証(Form-based認証)方式
  3. リバースプロキシ方式
  4. エージェント方式

各方式に特徴があり、場面ごとに採用すべき方式が異なります。それぞれの方式の説明は以下のとおりです。

フェデレーション方式

フェデレーション方式とは、異なるインターネットドメイン間のアプリケーション、サービスのユーザー認証を連携できる方式のことです。ユーザー情報を管理している IdP(Identity Provider)が各クラウドサービスと認証トークンをやり取りすることで実現します。
メリットはパスワードを直接使わず認証トークンでやり取りするため、セキュリティ強度が高いことです。仮に通信が傍受されても通信内容にパスワードの情報が含まれていないため安全です。

フェデレーション方式で用いられるプロトコルとして、SAML OpenID Connect(OIDC)が挙げられます。

SAML

SAMLとは、Security Assertion Markup Languageの略であり、SSOを実現する仕組みの1つです。異なるドメインやアプリケーション間での認証や認可情報を安全に交換するためのXMLベースのセキュリティ標準であり、プロトコルの名前です。ユーザーの認証情報や属性情報をセキュアに転送し、信頼関係を確立するための仕組みを提供します。

SAML2.0に関する仕様はこちらをご覧ください。(外部サイトへ遷移します)

SAML認証に関して、更に詳しく知りたい方は以下のページをご覧ください。SAML認証の動作原理から、具体的なユースケース、頻出の単語に関する説明などを網羅しています。

OpenID Connect

OpenID Connectとは、認可フレームワークであるOAuth 2.0を認証のために拡張させたものです。JSONベースのWebトークン(JWT)を使用してデータを構造化しています。JWTは両者の間で機密性の高いユーザーデータを安全に送信するためのルールを定義する業界水準です。
認証とは利用者本人の確認を行うことで、認可とは利用者に正しい権限を与えることです。OpenID Connectは認可フレームワークのOAuth 2.0を拡張したものなので、本人確認とアクセス権限があるかどうかの確認の両方を行うことができ安全なアカウント運用を実現できます。

OpenID Connectに関する詳細な仕様はこちらをご覧ください。(外部サイトへ遷移します)

IDパスワード認証(Form-based認証、代理認証方式)

ユーザーの代わりにシステムがログイン情報を入力してくれる仕組みです。ユーザー情報をアカウント情報が格納されたデータベースに保存し、ブラウザの拡張機能などが自動で入力フォームを検知し必要な項目を入力してくれます。

これにより、フェデレーション方式に対応していないアプリケーションなどに対してもSSOすることが可能になります。

リバースプロキシ方式

リバースプロキシ方式は、各ユーザーのデバイスとシステムの間に認証機能を備えたリバースプロキシサーバーを設置する方法を指します。エージェントソフトを1カ所にインストールして運用すればよいので、メンテナンスの手間がかかりません。また、新規でリバースプロキシサーバーを追加するため、既存システムはそのまま使えます。
デメリットとしては、SSOしたい対象のWebアプリケーションすべてをリバースプロキシ経由にする必要があるということです。

エージェント方式

エージェント方式は Web サーバーまたはアプリケーションサーバーに、認証用のエージェントソフトを組み込む方式です。ソフトをインストールするだけの認証方式のため、最もシンプルに実装できます。また、利用するサーバー単位でエージェントソフトが稼働しており、アクセス集中における認証処理の遅延が起こりにくいことがメリットです。一方、それぞれのサーバーごとにインストールする手間がかかることがデメリットです。また、アプリやサービスがエージェントソフトに対応しているかも、個別に確認しておかなければなりません。

以上の性質を踏まえて、それぞれの特徴とどんな場面に適しているのかを表にまとめました。

方式 特徴 適切な場面
フェデレーション方式 異なるドメイン間のアプリケーション・サービスのユーザー認証をパスワードを直接使わず認証トークンでやり取りするため、セキュリティが高いことが特徴です。 Google AppsやSalesforce, Office365などのフェデレーション認証に対応しているクラウドサービスをご利用の方に適しています。
IDパスワード認証方式 シンプルな方式で、ユーザー名とパスワードをウェブフォームに入力して認証を行います。この情報はブラウザが記憶し、同じサイト内では一度入力すれば再度要求されることはありません。 フェデレーション方式に対応していないクラウドサービスなどのログインに適しています。
リバースプロキシ方式 端末とWebシステムの間にリバースプロキシサーバを設置します。認証をリバースプロキシサーバが行うことでログインが可能。 自社独自のWebサービスやシステムを導入しており、多種多様なシステムが乱立していてもリバースプロキシ方式であればサーバーで一括で認証を行うため対応可能です。
エージェント方式 クライアントとサーバーの間にエージェントを設置し、エージェントがユーザーの認証を管理します。エージェントは各アプリケーションにインストールする必要があります。 既存のシステムに対する影響を最小限に抑えつつ、SSOを導入したい場合や、特定のアプリケーションだけにSSOを適用したい場合に適しています。

SSOサービスを選ぶ上で検討するポイント

これまで、SSOサービスについて認証方式ごとの違いなどについて紹介をしてきました。最後に、SSOサービスを検討する際に見るべきポイントについて紹介をします。確認すべきポイントは以下の3つです。

  1. SSOすることができるアプリケーション数
  2. 認証方式と業務で利用するサービスの相性が良いか
  3. 多要素認証の有無

それぞれについて詳細に説明をします。

SSOすることができるアプリケーション数

SSOサービスの導入を考えていらっしゃる企業様の多くは、業務で利用するサービスへのサインインに関して何らかの課題を感じていることと思います。しかし、業務で利用している(利用する予定のある)サービスに対してシングルサインオンできないと、せっかくSSOサービスを導入しても効果を感じることができません。そのため、普段業務で利用しているサービスにSSOできるかどうかの確認は必ず行うようにしましょう。海外のSSOツールの場合、日本のサービスへのSSOに対応していないことがあります。そういった場合にも独自に連携が可能なのか、サポートを受けられるのかなども検討するポイントの1つです。

認証方式と業務で利用するサービスの相性が良いか

業務で利用するサービスが多いのに、サーバーごとにエージェントを組み込むエージェント方式のSSOサービスを導入してしまうと、管理者側の負担が非常に大きくなってしまいます。しっかりと利用するSSOサービスの認証方式と自社の業務体制がマッチしているかを確認しましょう。

多要素認証の有無

SSOのデメリットの章でも紹介したように、SSOサービスは1つのログイン情報で複数のサービスにログインすることができるため、不正ログインを許してしまった場合の損失が非常に大きいです。そのため、セキュリティ強化として多要素認証の利用ができるSSOサービスがほとんどです。多要素認証の認証要素はいくつか種類がありますがそれぞれ認証強度が異なっています。したがって、自社のセキュリティ要件を満たすような多要素認証が利用可能かどうかも検討するべきポイントの一つです。

IDaaSを使ってSSOを実現

これまでSSOサービスのメリット、デメリットや導入時に検討するべきポイントを紹介してきました。ペンティオではSSOの実現にIDaaSをおすすめしています。IDaaSには、SSOはもちろん、アカウントを守るためのMFAやID管理を一元管理するためのIAMなども含まれています。IDaaSを導入することで、IT部門の業務量を大幅に軽減させるだけでなく、利用するユーザー全体にも業務効率の向上メリットがあります。

ペンティオではクラウドIDaaSのOneLoginを提供しています。過去には3年連続でOutstanding Partner Awardを受賞した実績がございます。OneLogin、IDaaSの導入をご検討の方はぜひペンティオにお任せください。

無料トライアル申し込み・お問い合わせはこちら

OneLoginでは30日間の無料トライアル期間を設けております。企業ごとに独立したアカウントを発行していますので安心してご利用いただけます。検証課題が解消していない場合にはトライアルの期間を延長することも可能です。