シングルサインオン (SSO) の仕組みを改めて理解する

2020/09/17

1.jpg

「一度ログインすると、その後のログインは不要」という意味で用いられるシングルサインオン (SSO) は、特に企業においては当たり前のように導入されている技術になります。以下では、その仕組みについて、改めてご紹介したいと思います。

 

 

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

2.jpg

シングルサインオンとは、「一度システム利用開始の認証を行うと、別なシステムを新たに利用する際の認証を省略できること」「または、認証の省略を実現するための製品・システム・ツール」とご理解頂くのが最も分かりやすいかと思います。

例えば、同一企業内の5つのシステムを利用する際に、5回認証するのではなく、はじめの1度だけ認証を行ってしまえば、次からの4回の認証は省略できます。何度もID・パスワードを入れる必要がないため、ユーザーの生産性が向上します。

なお、詳細については以下の紹介記事に詳しい説明がありますので、ご一読いただければと思います。

・関連記事
 シングルサインオン (SSO) とは何か

 

 

シングルサインオンの仕組み

3.jpg

「シングルサインオン」と一言でいっても、使われている技術や方法は同じではありません。以下では、一般的に用いられている仕組みについてご紹介します。

 

 

1.Kerberos認証ベース

「MIT」の略称で知られる、米国マサチューセッツ工科大学で開発された認証方法となります。Kerberos認証が広く用いられるようになった理由は、マイクロソフトのWindows Serverが提供するディレクトリ機能である「Active Directory」で採用されたことが大きいとされています。

Kerberos認証の特徴は、「チケット」が用いられている点です。チケットとは、クライアントのID、タイムスタンプ、有効期限が記された情報です。IDやパスワード情報を直接やりとりせず、チケットをやり取りすることで、情報漏えい・盗聴を防いでいます。

Kerberos認証の利用について、Active Directoryを例に紹介しましょう。はじめにユーザーは、ドメインにログインします。この際、ドメインコントローラー(ドメイン上でユーザーアカウントを集中管理するサーバー)に対してID・パスワードを送信します。このID・パスワードが正しいと、ドメインへのログインを許可されるとともにチケットが付与されます。

以後、ドメイン内のサーバーに対してログインする際は、付与されたチケットを利用することで、ID・パスワードの入力を省略することができます(チケットがドメイン内のリソースに対しての「通行証」の役割を果たします)。これが、Kerberos認証を利用したシングルサインオン(Active Directoryの場合)となります。

なおKerberos認証は、あくまでドメイン内のリソースに対するチケットの発行となるため、ドメイン外のリソース、例えばクラウドサービスに対するシングルサインオンを同時に提供することはできない点は留意する必要があります。

 

2.ICカード認証ベース

ICカードリーダーに、ICカードを挿入するタイプの認証方式です。ICチップによる認証に加えて、ICチップ認識後のパスワードによる認証、もしくはクライアント証明書による認証が併用されています。なお、パスワードに加えて、ICカードという物理デバイスを利用しているので、2要素認証 (多要素認証) となります。

ICカードによる認証は、Active Directoryを利用しない環境、またはActive Directory環境でセキュリティを強化する目的で利用されます。なおICカード単体ではなく「ICカード関連ソリューション」といった形で、ICカード、ICカードリーダー、ソフトウェア、開発をセットに導入する場合が多いと言えます。

パスワードによる認証を利用する場合は、既存の認証(例: Active DirectoryにおけるKerberos認証)を利用する形で動作します。クライアント証明書を利用する場合は、PIN入力時にICチップ内のクライアント証明書の有効性を確認し、クライアント証明書が有効であればリソースへのアクセスが許可されるという仕組みとなっています。一度認証が許可されると、対象のリソースに対してのシングルサインオンが可能となります。

なお、ICカードを利用した認証は2000年代前半から中盤にかけて多く導入・利用されましたが、Kerberos認証と同様にクラウドに対応した認証方式ではないため、かつてほど多く導入されていません。

 

3.統合Windows認証ベース

この認証は「統合Windows 認証」という1つの認証方式があるわけではなく、「Windows 2000以降のOSで利用可能な認証群」を指します。例えば、Kerberos、SPNEGO、NTLMSSPなどの認証方式となります。

なお、SPNEGOやNTLMSSPや1990年代後半から2000年代前半にかけて、非Active Directory (すなわち非Kerberos環境)やスタンドアローン時の認証において利用された認証方式ですが、現在はその利用が減少しています。

 

4.SAML認証ベース

クラウドにおけるシングルサインオンのニーズに対応する形で利用が伸長しているのが、SAML認証となります。詳細は以下の記事を参照ください。

・関連用語
 SAML | Security Assertion Markup Language | サムル | サムエル

オンプレミスを前提としたシングルサインインの導入が減少する中、ドメインやネットワークに依存しないためクラウドサービスにも対応できるのが、SAMLの特徴です。通常のフォームベース認証と比べて、認証情報を安全にやり取りすることができるため、導入数が増加しています。

 

 

シングルサインオンのセキュリティを必要なだけ強化する「トラスト・ログイン」

4.jpg

クラウドサービスのログイン認証に占めるSAML認証の利用率は、今後高まっていくものと考えられますが、単にSAML認証を使えば必ず安全というわけでもありません。各企業が判断するリスクに応じて、追加のセキュリティ(多要素認証)を強化することが望ましいと言えます。

当社のクラウドサービス対応シングルサインオン製品「トラスト・ログイン」は、SAMLに対応するのみでなく、ワンタイムパスワード、IPアドレス制限、クライアント証明書といったセキュリティ強化にも対応する、純国産の製品です。既に5,000社以上の導入実績を有します(2020年9月現在)。

既存製品との併用、または既存製品の入替の際にぜひ、資料をダウンロード頂きご検討ください。