全1551文字

 SSO(Single Sign On)とは、1回の認証作業(サインオン)で複数の異なるサービスを利用できるようにする技術や仕組みを指す。サービス間で認証に関する情報を共有することで実現する。

 利用者ごとに異なるサービスを提供するWebサイト(Webサービス)やアプリケーションは、ユーザー認証を必ず実施する。ユーザー認証とは、サービスを利用しようとしている人物が正規の利用者かどうかを確認すること。ユーザー認証には、ユーザーIDとパスワードがよく使われる。

 ユーザー認証はサービスごとに実施するのが原則だ。複数のサービスの利用者は、それぞれで毎回認証作業を実施する必要がある(PICT1)。

PICT1●個々のサービスごとにユーザーを認証
PICT1●個々のサービスごとにユーザーを認証
(イラスト:なかがわ みさこ)
[画像のクリックで拡大表示]

 利用するサービスが多い場合には、認証に必要な情報を管理するのも大変になる。例えばパスワードの場合、それぞれのサービスで推測困難な異なるパスワードを設定し、それらを適切に管理しなければならない。

IDPにユーザー認証を一任

 そこで考え出されたのがSSOである。SSOでは、信頼できるID情報の提供者(IDP:IDプロバイダー)にユーザー認証を一任する。コンシューマー向けのサービスであればFacebookやGoogleなどがIDPとなる。企業ネットワーク向けであれば、「Active Directory」などのディレクトリーサービスを利用する。SaaS(Software as a Service)などクラウドサービスとも連携させる場合は、IDaaS(IDentity as a Service)を利用するのが一般的だ。

 SSOは利用者と利用するサービス(アプリケーション)、それにIDPの3者が連携して成り立つ(PICT2)。

PICT2●IDPが一括して認証を請け負う
PICT2●IDPが一括して認証を請け負う
(イラスト:なかがわ みさこ)
[画像のクリックで拡大表示]