会員サイト構築の記事
ARTICLEシングルサインオンシステム(SSO)とは?導入メリット、手順や注意点を解説
シングルサインオンシステムがどういったシステムなのか理解できていない方もいるのではないでしょうか。今回はシングルサインオンシステムがどういったものか、導入する必要性とメリット・デメリットについて、さらに導入時の具体的手順や注意点について解説していきます。
目次
シングルサインオンシステム(SSO)とは?
シングルサインオン(Single Sign On:以下ではSSOと略す)の意味と主要な仕組として数例解説していきます。
SSOシステム
SSOシステムは一度ユーザー認証に成功してシステムの利用ができるようになると、システム間で連携する他のシステムにログインする際に再度認証の手続きを行うことなく、自動的にシステムの利用ができる仕組みをいいます。
SSOシステムの方式
SSOの主要な実現方法について解説していきましょう。
リバースプロキシ方式
リバースプロキシと呼ばれるプロキシサーバーを利用する方式です。リバースプロキシサーバー経由でいろいろなWebサービスにSSOを行います。従って、事前にリバースプロキシサーバーがその先のサービス提供サーバーとの認証に成功し、サービスの利用が可能であることを確認すればよいので事前検証時間を削減し、導入までの時間を短くできる可能性があります。
代行認証方式
クライアントに専用のエージェントアプリをインストールしておき、エージェントアプリは事前にサービス提供サーバーへの認証IDとパスワードをクライアントから入手しておきます。常時エージェントアプリがサービス提供サーバーの認証要求を監視します。認証要求があった場合、自身で保持するサービス提供サーバーごとのIDとパスワードを使い、ユーザーに代わってユーザーID、パスワードの入力を行うことによって実現する方式です。
SAML認証方式
Web上における異なるシステム間において認証を行うための標準規格であるSAML(Security Assertion Markup Language)認証を利用した認証方式です。ユーザー端末およびユーザーIDを保持・管理するIdP(Identity Provider)とSP(Service Provider)の3者間で認証を行います。ユーザー端末からWebサービスを提供するSPへアクセスし、ログインを試みるとSPはIdPに認証を要求します。
つまりアクセスしてきたユーザーが正規のユーザーであるかの認証の依頼をIdPに問い合わせます。(これはIdPにSAML認証要求を行うことを意味します。)IdPはSPから送られてきたSAML認証を解析し正規のユーザーであるか否かを確認します。その結果をユーザーに返答すると共にSPに対して、認証結果を返します。つまりアクセスのあったユーザーへのサービスの提供の可否を返します。
エージェント方式
各種Webサービスを提供するサーバーに専用のエージェントを組み込みます。このエージェントがSSO管理サーバーと連携して認証処理を行う方式です。つまり、ユーザー端末からWebサービスを提供する各種サーバーへアクセスがあった場合、サーバー内のエージェントは、都度、SSO管理サーバーに対して問い合わせを行います。
その結果、アクセスのあったユーザーが正規のユーザーであることが確認できた場合、認証成功をサービス提供サーバーに返し、ユーザーはサービスの利用が可能となります。
シングルサインオンシステム(SSO)を導入する必要性
一般的に、業務用に管理する各種システムのユーザーID、パスワードは少なく見積もっても20種類以上といわれています。これは業務用のシステムにのみ限定した数であり、個人的に利用しているサービスを含めるとこの倍以上の種類に上ると考えられます。これらの多くのIDとパスワードをすべて異なる設定にして、さらに定期的にパスワードを変更するなどして管理していくことは、非常に大きな負担となります。
その結果、多くの場合、同じようなユーザーIDとパスワードを使いまわす、もしくは紙に書きだして管理するなどセキュリティ的に好ましくない方法が取られていることも少なくないでしょう。SSOを導入することにより、煩雑なIDとパスワードの管理から解放され、よりセキュアな状態への改善が期待できます。
シングルサインオンシステム(SSO)導入のメリット
SSOシステムを導入するメリットについて解説していきましょう。
利便性が向上
業務用に管理する20以上にも及ぶユーザーIDとパスワードの管理を行う必要がなく、1種類のみのユーザーIDとパスワードの管理のみでSSOに対応したすべてのシステムを利用できるようになるため、システムの利便性が大きく向上します。
パスワード管理のリスク軽減
サービスごとに異なるユーザーIDやパスワードの管理には多くの課題があります。大量のパスワードを管理するために紙に書き写すとか、ファイルにまとめることによる紛失し漏洩するリスクがあります。また、パスワードの使いまわし、長期間同じパスワードを使い続けるなどのセキュリティ上好ましくないリスクがあります。SSOの導入によりこれらのリスクを低減することが期待できます。
管理者の負荷軽減
各種サービスのパスワード忘れやアカウントロックに伴うシステム管理者への問い合わせは後を絶ちません。これは各種サービスのユーザーIDとパスワードをユーザーは管理しきれていないことを意味します。SSOの導入によりこのような状況は大きく改善されるため、システムを管理する担当者の負担の軽減が期待できます。
短期で導入可能
代行認証方式を除くSSOの場合、基本的に認証管理サーバーが対応することになり、Webサービスを提供するサーバー側の特別な対応も必要ないことから比較的早期に導入が可能です。また、代行認証方式の場合においても、すでに商用サービスとして実績のあるものを利用することにより、早期導入が期待できます。
シングルサインオンシステム(SSO)導入のデメリット
SSOシステムを導入する場合のデメリットについて解説していきましょう。
セキュリティに不安
SSOにおけるIDとパスワードがハッキングされると、関係づけられた全サービスを不正に利用されてしまうリスクがあります。このようなリスクを回避するためにいくつかの方法が取られています。
複数の認証方式を組み合わせて認証を行う二要素認証や多要素認証を利用することにより認証の強度を上げる方法です。
たとえば、ユーザーIDとパスワードの認証を通過したあとに、パスコードによる認証を行うなど異なる認証方法の利用が考えられます。あらかじめ登録しておいたスマホやタブレットの電話番号にシステムからショートメッセージを送信します。このメッセージに数桁の数字列を記載しておきます。ユーザーはこの数字列を読み取り、システムの認証画面に入力することにより認証する方法です。
2つ目の方法はワンタイムパスワードを利用する方法です。ワンタイムパスワードはUSBメモリと同様の形状をしたデバイスで、内蔵するLCD表示部に定期的に数桁の乱数コードを表示させます。このコードをユーザーが読み取り、システムの認証画面に入力して認証する方法です。
3つ目の方法としてシステムにアクセスしようとするクライアントのIPに制限を設ける方法です。正規のユーザーとして登録された特定のIPアドレスを有するクライアント以外からのアクセスはブロックして、システムの利用を許可しない方法です。
シングルサインオンの安全性は?セキュリティ観点での詳細を解説
SSOシステムが停止するとすべてのサービスが利用できなくなる
SSOを通してサービス利用サーバーへのアクセスを行うため、SSOシステムが何らかの理由で停止してしまった場合、SSOを利用してログインするすべてのサービスを利用できなくなる可能性があります。ただし、サービスを提供するそれぞれのサーバーにログインするためのユーザーIDとパスワードがわかっていれば、そのサービスを利用できる可能性はあります。
SSOシステム導入コスト
ベンダーから提供されるクラウド型ソリューションを利用する方法と自社でシステムを構築して運用する方法があり、それぞれで発生する費用が異なります。
ベンダーの提供するクラウド型サービスの利用の場合、システムを稼働させるために必要となる費用は、初期導入費用と月々のサービス利用料に加え、年単位で発生する保守費用が一般的です。また年々導入コストは低減傾向にあります。技術的にも費用的にも導入のハードルが比較的低いことが特徴ですが、他方で、サービス利用料を払い続けなければならない点を認識する必要があります。
オンプレ型の場合、自社仕様にあわせたシステムを作り上げることが可能ですがシステムを構築するための開発工数と期間が必要となり、その結果、比較的大きな開発費が発生します。さらにシステム稼働後も保守対応の継続が必要です。
SSO連携できないサービス
現状ではクラウド上の多くのサービスはSSO認証の標準的な方式に対応していますが、以前のサービスは対応していないものもあります。このようなサービスを含めてSSOを実現する場合、個々のシステムの認証方式に合わせた認証サーバー側の作りこみが必要となります。
シングルサインオンシステム(SSO)を導入する際の手順
SSOを導入する際の手順について解説していきます。
SSO化したいシステムの洗い出し
業務用として使用しているさまざまなシステムにて利用しているサービスすべてを対象として、SSOが実現できることが最適と考えられます。しかし、すべてのシステムにおいて標準的なSSOプロトコルに対応している可能性は低く、特に長期間使用しているシステムほど、その可能性が高くなります。従って、それぞれのシステムにおいてSSOに対応した場合の投資対効果を検討した上でどのシステムまでを対象としてSSO化すべきかを決定します。
設計
SSO化の方針を受けてこれを入力情報として、具体的な実現手段を決める必要があります。クラウド型サービスを導入するかオンプレ型で設計を進めるかの選択です。
クラウド型の場合、SSOサービスを提供するベンダーによる完成されたソリューションを利用するだけのため、早期にサービスを開始できる利点がありますが、ベンダーの製品仕様に沿ったサービスであるため、自社の仕様として盛り込みたいことが実現できない可能性もあります。この点は受け入れなければなりません。
もう一つの方法がオンプレ型です。この場合、サーバーは自社で用意しますが、そのうえで稼働させるアプリの調達方法として2通りのアプローチがあります。パッケージソフトとしてベンダーから購入する方法とアプリまでも自社で開発する方法です。すべてを自社で開発すれば、自社の要求仕様にもっとも近いソリューションを実現できる可能性が高いですが、いくつかのハードルもあります。
システムを構築する技術力や経験があるかどうか、開発するための期間的な猶予はあるか、さらに開発を行える技術者を確保できるかです。これらがクリアできれば自社開発の可能性が出てきます。いずれにせよ、どこまで自社でやり、どこから外部調達するのかの方針を決めて設計を行う必要があります。
テスト
設計を完了したシステムが期待通りの動作をするかの確認を行うためにユーザーを登録して認証処理のテストを行います。テストの実施にあたっては、できるだけ多くのテスターによりテストを行います。ユーザーIDとパスワードを入力して認証にパスした後に、SSO対象の全サービスへのログイン確認を行う正常系の確認は当然として、認証に失敗した場合および繰り返し認証に失敗してロックアウトされた場合などのイレギュラーなケースを含め、仕様通りの振る舞いとなるかの確認を繰り返し行います。
リリース
計画したすべての動作確認とその過程で発見された不具合やシステムの変更要望などへのすべての対応が完了すると、システムの利用対象者に対して、システムリリースを案内して正式な運用開始となります。
シングルサインオンシステム(SSO)導入時の注意点
SSOシステムを導入する際の主な注意点について解説していきましょう。
既存システムとの整合性
サービスベンダーが提供するソリューションを採用する場合、そのソリューションが提供可能な機能を事前にしっかりと確認する必要があります。特に、稼働中のシステムとのつなぎこみを行う場合のインターフェースに問題がないかについては特に慎重に確認する必要があります。導入決定し、費用を支払ってつなぎこみを行おうとしたら、システムの改修が必要であることが判明するといったことがないように、事前の確認を怠ってはいけません。
投資対効果の精査
一般的に業務用途で考えるとユーザーは複数のシステムを活用しています。それらのシステムによって、SSOへの対応により業務効率が上がるものとSSOへ対応するための費用の方が導入効果に比較して大きなものに分けられます。従って、システムごとに現状のログインに要する時間とSSO導入した場合のログイン時間の差分の合計時間を効果時間(効果金額)と考え、これをSSO導入費用と比較して導入の可否判断を行います。
具体的には、平均利用者数×1回の認証(ログイン)に要する時間×1日のアクセス回数×年間稼働日をSSO候補のサービスごとに計算して、総時間を算出します。総時間が出れば、これに労働単価(平均値)をかければ効果金額の総額が出てきます。導き出された金額を発生する費用と比較することで導入の可否を判断します。その場合、一般的には償却期間を3年~5年程度に設定して回収の可否を判断の材料とします。
二段階認証やFIDO認証、生体認証を活用した認証機能で会員向けサイト・サービスを構築するなら
当社のご提供する 「会員管理・会員サイト構築ソリューション」は、会員向けのサイトやサービスに必要とな要素をワンストップで提供するシステムです。
会員データ管理からマイページ作成・ログインなどの基本機能から、メール配信やアンケート作成、問い合わせ、フォーム作成、決済連携まで、会員管理・運営に必要な機能が充実。また、金融機関・官公庁でも採用されている高いセキュリティで会員の大切なデータを管理します。WordPressやMovableTypeを始めとした各種CMSや基幹システム等とのAPI連携も可能です。
ログイン認証機能では、通常のID・パスワードを使った認証に加えて、スマートフォンアプリ・メール・SMSなどを用いた二段階認証、指紋や虹彩等の生体情報を利用したFIDO認証(Fast IDentity Online)など、強固な認証にも対応しています。
ファンクラブやユーザーサポートサイト、学会・協会サイト、申請受付サイト、キャンペーン受付サイト、イベント受付管理、入居者サイトなど様々な業界・用途・シーンで延べ11,000以上のご利用実績がございます。
また、メガバンクを始め100以上の金融機関に導入されている個人情報運用に最適なセキュリティを備えています。総務省のセキュリティ対策にも準拠。また、第三者機関のセキュリティ診断でも高いセキュリティを評価されています。
まとめ
SSOシステムの方式や導入する必要性とメリットに加えデメリットについて説明しSSOシステムを導入するための具体的な手順を説明すると共に導入にあたっての主な注意点について解説しました。導入にあたってはその目的を明確にすると共にシステムの導入によってその目的が達成できるしっかりとした見通しを立てて進めていきましょう。