シングルサインオン(SSO)とは
シングルサインオン(SSO)とは、一度の認証手続きで複数のWebアプリケーションやクラウドサービスを利用できるようにする仕組みを指します。
認証とは、アプリケーションが利用者を特定することです。
現在も広く使われているパスワード認証はアプリケーションごとにIDとパスワードを入力し、本人確認を行いますが、シングルサインオン(SSO)の仕組みを利用した場合、認証を行うのは一度だけで、その後別のアプリケーションを利用する際に再度IDとパスワードを求められることはありません。
シングルサインオン(SSO)はどのようにして登場したか
- オンプレミスの時代(社内シングルサインオン)
- シングルサインオン(SSO)は、まず社内で使われ始めました。従業員が社内の勤怠システムや営業管理システムを利用する際に都度、IDとパスワードで認証をするのでは手間がかかるため、一度の認証で複数のシステムが使えるように利便性を高めたのがシングルサインオン(SSO)導入の始まりです。
厳密には、一度の認証手続きで複数のWebアプリケーションを利用できるようになるシングルサインオン(SSO)と、アプリケーションごとに認証手続きは必要だがパスワードが共通化されているシングルパスワードといったソリューションが混在していました。
- フェデレーション方式の登場
- 社内利用が前提で普及したシングルサインオン(SSO)ですが、製品ごとに導入方式がバラバラでした。そのため、異なるSSO製品を利用する子会社やパートナー先では同様の機能を利用することが出来ませんでした。そこで、異なるセキュリティドメインでもシングルサインオン(SSO)ができるように標準化を行なったのがフェデレーションと呼ばれる認証方式です。
- クラウドシフト
- オンプレミスからクラウドサービスを利用する企業が増えるにつれ社外のユーザーの利用も増加し、従来のシングルサインオン(SSO)の仕組みだけでなく、ユーザーの管理や認証の強化といった機能がより求められるようになりました。そこで、クラウド環境を前提に、ポータル画面の提供、シングルサインオン(SSO)、ユーザー管理(ID管理)、認証の強化を包括的に提供する仕組みとして登場したのが、IDaaS(Identity as a Service)です。
シングルサインオン(SSO)の仕組み
シングルサインオン(SSO)を実現する認証方式は多岐に渡ります。ここでは、主にリバースプロキシ認証、SAML認証(フェデレーション認証方式)、フォーム認証(代理認証方式)の3つを紹介します。
1. リバースプロキシ認証
リバースプロキシ認証とは、ユーザーが利用するWebブラウザとWebアプリケーションの経路にリバースプロキシと呼ばれる中継サーバーを配置する方式です。このリバースプロキシ上で認証を行うことで、対象アプリケーションへのアクセスを制御します。
同種の仕組みを個々のWebアプリケーションに組み込むタイプの、エージェント方式もあります。
2. SAML認証(フェデレーション認証方式)
IDaaSが持つクラウドサービス間のID連携の仕組みはフェデレーションと呼ばれますが、このフェデレーションの認証プロトコルにはSAML(サムル)がよく利用されます。
SAMLとはSecurity Assertion Markup Languageの略で、異なるセキュリティドメイン間で信頼性の高い方式で認証情報を共有するための標準規格です。
ユーザーはIdP(Identify Provider)にて認証を受け、その認証情報を利用し各種サービス(SP)を利用することが可能になります。
3. フォーム認証
前述の認証方式を利用するには、いずれもWebアプリケーション自体を改修する必要があります。そうした改修が困難な場合に利用できるのがフォームベース認証です。この方式ではユーザーがIDやパスワードを入力する代わりにシングルサインオン(SSO)の仕組みが代理で入力することで認証手続きを自動化します。この振る舞いから、代理認証方式とも呼ばれています。
この方式では、Webアプリケーションごと、ユーザーごとの認証情報をシングルサインオン(SSO)の仕組みの中に保持しておく必要があるため、セキュリティ上の課題が残ります。
シングルサインオン(SSO)の導入のメリット
シングルサインオン(SSO)の導入には主に以下のメリットがあります。
利便性の向上
システムを利用する際、認証を行うのは一度になるため、都度ログインを行う必要が無くなります。シングルサインオン(SSO)を適切に導入することができれば、数多くのシステムを利用する場合も一度のログインで全てのシステムを利用できるようになるため、利便性が向上し、利用者やIT管理者の負担を減らすことができます。
セキュリティリスクの軽減
セキュアな環境を作ります。例えばパスワード認証の場合、通常はシステムごとにIDとパスワードを用意します。利用するシステムの数が多いと、類似したパスワードの流用が増えるためセキュリティリスクが高まります。シングルサインオン(SSO)であれば管理する情報が限られるため、リスクを軽減できます。
管理コストの削減
IT担当者は、IDとパスワード管理のための新たなシステム構築や従業員の対応にかかる労力を削減できます。従業員は、利用するアプリケーションの数に関わらず一セットのIDとパスワードを管理すれば良いため生産性の向上が図れます。
シングルサインオン(SSO)の導入の課題
不正アクセスの被害拡大
一つのIDとパスワードでログインが出来るということは、認証さえ突破してしまえばユーザーが使用する全てのアプリケーションにログインが可能になります。実際、フィッシング攻撃(*1)を経験した企業は2021年には89%に上り、84%の企業がID関連の情報漏洩の被害に遭っています。(*2) ハッカーは、サイバー攻撃を仕掛けるためにもまずログインをし、システム内に入り込んでいくのです。
*1:フィッシング攻撃とは、インターネットのユーザーから経済的価値がある情報(例: ユーザ名・パスワード・クレジットカード情報)を奪うために行われる詐欺行為です。
*2 出典:”2022 Trends in Securing Digital Identities”, Identity Defined Security Alliance.
インターネット上に流出したIDやパスワード情報を組み合わせて自動的にログインを試みる、クレデンシャルスタッフィングと呼ばれる手法も近年増加傾向です。従業員が継続して同じパスワードを利用し続けたり、予測可能な認証情報を使用し続けたりする限り、クレデンシャルスタッフィングの成功は続きます。
シングルサインオン(SSO)非対応のシステム
企業に導入されているITリソースの全てがシングルサインオン(SSO)に対応している訳ではありません。人の代わりに自動的にプログラムするボットの存在や全てのITシステムにシングルサインオン(SSO)を導入するとコストが増えるケースもあるため、限定的な導入になる場合があります。
最小権限の原則を侵害
不正アクセスを防止するためには、特定のシステムに付与される権限は最小限にすべきという最小権限の原則を徹底すべきです。SSOソリューションでは認証だけでなく、ユーザーに付与される権限に制限を加える認可の仕組みも提供しています。しかし、こうした認可の機能を利用しているケースは少なく、アプリケーションでの個別管理に委ねられています。そのため従業員の退職や異動、業務委託先の変更に追随できていないケースも多く、これらのアカウントが放置されている場合、被害を最小限に食い止めることができず、拡大していくリスクが生まれます。
シングルサインオン(SSO)は万能ではない。
加えて必要なソリューションは?
不正取得されたIDによるアクセスは、システム上、正常なログインと区別がつきません。そこで新たに必要になるのが、「誰が、何に対する、どのようなレベルの権限を持っているのか」、「その権限を持っていることは正常か」を企業全体で整合性のとれたIDとシステム利用権限を統制する、アイデンティティ・ガバナンス/管理(IGA)という仕組みです。
アイデンティティ・ガバナンス/管理(IGA)とはここではアイデンティティ・ガバナンス/管理(IGA)の中でもシングルサインオン(SSO)の弱点を補完し、さらにセキュリティを強化できる機能を紹介します。
個別管理からロール権限の管理へ
ロールは、ユーザーが所属する部署や役職単位でその職務を遂行するために必要な複数のシステムの権限を束ねた概念です。アイデンティティ・ガバナンス/管理(IGA)はすべてのIDとその権限を可視化し、権限の妥当性を点検することで不正アカウントや過剰な権限の発見を容易にします。爆発的に増えているIDおよび権限に対し、これらの継続的な活動を行う上でロールの概念を利用することは、整合性のある一貫性を保った運用を行うためには必須で、コンプライアンスの向上にも寄与します。
定期的なID棚卸からアクセス権の棚卸の自動化へ
組織のセキュリティを確保するためには、従来のような年に一度、あるいは四半期ごとの定期的な棚卸では不十分です。従業員や職員の多様化の時代には、そうしたユーザーの変化(入社、異動、退職など)に応じた棚卸を行う必要があります。一方でSaaSアプリに代表されるITリソースの数が増え、AWSやAzureのようなクラウド環境を複数管理することで、IDの数と権限の組み合わせは膨大になります。そのため、従来のように全ユーザー一律に棚卸を行うことは現実的ではありません。変化の生じたタイミングで、変化の生じたユーザーに対象を絞った棚卸を実施する仕組みが必要です。こうした自動化の仕組みにより、過剰な権限が付与されていたり、退職者のアカウントがログインできる状態になっていたりするリスクを遅滞なく検知し排除します。
IoTやボットを含むすべてのID情報を統合管理
アイデンティティ・ガバナンス/管理(IGA)では、通常利用しているアプリケーションの他に、シングルサインオン(SSO)では対応していなかったアプリケーションのID情報も含め集約し、横断的にID統合管理を行います。サイバーセキュリティの境界線が企業ネットワークからIDへシフトした今、ID管理そのものがセキュリティ対策の中核を担うことになります。
シングルサインオン(SSO)から統合ID管理システムへ
SailPointは、IDを中心に設計されたクラウド型統合ID管理システム”SailPoint IdentityNow”を提供しています。オンプレミス、クラウド、メインフレームに存在する各種ID情報を集約し、人を中心に関連付けを行うことで、SailPoint独自のアイデンティティ・キューブを形成します。取り込まれたIDに付与されている各種アクセス権限は個々に取り扱うのではなく、複数のアクセス権限を束ねたロールの概念を取り入れることで、効率よくすべてのアプリのID管理を行います。
シングルサインオン(SSO)とアイデンティティ・ガバナンス/管理(IGA)の違い
シングルサインオン(SSO)とアイデンティティ・ガバナンス/管理(IGA)は、それぞれが搭載する機能や能力、目的が大きく異なります。
権限管理
シングルサインオン(SSO)では、ユーザーがどのITリソースにログインできるかまでは管理します。しかし、それだけではITリソースにアクセスした後に、どこまでの権限を持ち、どのような情報へのアクセスを許可されたか、という情報を管理・統制するには不十分です。
アイデンティティ・ガバナンス/管理(IGA)はシングルサインオン(SSO)対象のアプリケーションだけでなく、すべてのアプリケーションの権限情報の可視化および制御の機能を提供します。
アクセス権の棚卸
シングルサインオン(SSO)は、IT部門が個別にアクセス権の付与を判断する必要があります。そのため、IT部門の業務負荷が大きくなります。
アイデンティティ・ガバナンス/管理(IGA)では、ユーザーが持つアクセス権の妥当性をIT部門が判断するのではなく、業務部門の責任者によって確認するための棚卸機能を提供しています。担当者によって不適切と判断された権限は、IT部門の手を煩わすことなく自動的に剥奪させられます。
IDライフサイクル管理
シングルサインオン(SSO)でも、典型的なIDの作成や削除といった操作は可能です。しかし、現実社会では入社や退職だけでなく、異動や昇格、兼務、出向、休職といった様々なイベントが発生し、そうしたイベントごとに必要な権限の割り当てや剥奪が求められます。
アイデンティティ・ガバナンス/管理(IGA)は、そうしたライフサイクルイベントごとに適切に権限の割り当てを行います。権限情報を常に最新かつ適切な状態に保つことで、不正行為や情報漏洩を防止し、インシデント発生時には即座にアクセス履歴を参照することで、迅速な原因解明が可能になります。
パスワードの同期
シングルサインオン(SSO)は、ユーザーに対して唯一のユーザー名/パスワードの組み合わせで様々なアプリケーションを利用させる仕組みのため、パスワード同期機能はありません。
アイデンティティ・ガバナンス/管理(IGA)は、シングルサインオン(SSO)の対象外のアプリケーションを含めて包括的にアクセス権限の管理を行います。企業や組織が利用しているすべてのアプリケーションがパスワードの同期の対象となるため、クラウドからメインフレームまで一気通貫のシングルパスワード環境を実現します。
まとめ
シングルサインオン(SSO)は、ITシステムを利用するうえで利便性の高い仕組みですが、セキュリティ上万全ではありません。そこで、IDとその権限を継続的に監視するアイデンティティ・ガバナンス/管理(IGA)という仕組みを導入し組み合わせることで、なりすましやランサムウェアといった個人のIDを標的にしたサイバー攻撃を組織的に防御することが可能です。企業が利用するアプリケーションやデバイス環境、クラウド環境が複雑多岐に渡る今だからこそ、AIや機械学習を上手に活用したID管理システムが求められています。
関連コンテンツ
SailPointについての問い合わせ
*必須フィールド