Active Directoryについて(その3)

フェデレーションとシングルサインオンについて

 

Active Directoryについて(その1)で認証、認可についてお話しましたが、クライアントは、ID,パスワードで認証に成功したら、リソースにアクセスするためのチケットをドメインコントローラーから取得します。そのチケットを使用して認可された範囲でリソースを使用することができます。

このときの一連のプロトコルをKerberosといいます・

 

しかし、Kerberosは、あくまでもADのドメインの範囲内であり、クラウドサービス(SaaS)を利用する際には、別のプロトコルが必要で、昨今では、SAML(Security Assertion Markup Languageの略)が最も有力といってよいでしょう。


SAMLの主要コンポーネントは、IdP(ID Provider)とSP(Service Provider)があります。IdPから、Assertion(ユーザ情報などが入ったセキュリティトークン)をSPに受け渡し、SPは、ユーザに応じてコンテンツを表示します。

例えば、ADとOffice365のSSOを考えます。

ADFSが、IdPになり、Offive365がSPになります。
クライアントがSP ( Office365 ) で認証を行おうとした場合、http リダイレクトにより自組織の IdP (ADFSサーバ) へ飛ばされ、そこでログインを行います。

ログインが成功した場合、IdP はクライアントに Assertion(アサーション) を発行し、クライアントは再度 http リダイレクトにより SP へ戻され、その際に Assertion を提示することでそのサーバへログインできます。

SAMLを使用することで、Office365とのフェデレーションを実現し、ユーザーからみて、シングルサインオンとなります。