【IDM】Windows Azure Active Directory と Office 365 と外部 IdP の関係(予想)
※この投稿は、あくまでも現在公開されているドキュメントやBLOG、および自身による動作検証をもとにしたものであり、マイクロソフトが正式にドキュメント化しているものではありません。あくまでも「ご参考」ということでよろしくお願いいたします。検証作業等の参考になれば幸いです。
Windows Azure Active Directory と Office 365 の関係を調べていると疑問がつきません。
特に、Access Control Service との関係など、なにがどうなっていて、どこまで認証部分をカスタマイズできて、何ができなくて。。。といったことで夜も眠れなくなります。
そこで、「こんなかんじなんじゃないか?」という予想をまとめたものが以下の図です。
なんとなく、Access Control Service(ACS) が使われているように思いがちなのですが、従来 MFG(Microsoft Federation Gateway)と呼ばれていた STS(Security Token Service)が使われているような気がします(MFGと呼んでいるかどうかは定かではありません)。ただ、MFG の Endpoint が以下のURLなので、全くACSを使っていないというわけでもなさそうで。。。
ちなみに、ACS の Endpoint は以下のような URL になります。
https://<Namespace名>.accesscontrol.windows.net/
ちなみに、以下の図で赤丸を付けた部分は、Set-MsolDomainAuthentication というコマンドレットを使用して関連付けることができます。選択できるプロトコルは WS-Federation と SAML 2.0 なので、いずれかに対応した独自 STS を開発すれば「理論上」は MFG の IdP として関連付けることができるはずです。
逆に、MFG の RP として ACS を登録する方法については Vittorio の blog で紹介されています。
Provisioning a Windows Azure Active Directory Tenant as an Identity Provider in an ACS Namespace
https://blogs.msdn.com/b/vbertocci/archive/2012/11/07/provisioning-a-directory-tenant-as-an-identity-provider-in-an-acs-namespace.aspx
つまり、以下のようにAzure ADをACSのIdPとして登録することができるわけですね。
では、逆に、以下のようなことはできるのか??????
つまり、Facebook の ID を使用してOffice 365 を使用するために、MFG に IdP として ACS を登録するというものです。理論上できそうなのですが、成功しておりません。以下に Shibboleth を MFG と信頼関係を結ぶための手順が公開されていますので、これを参考にどなたかチャレンジしてみていただけないでしょうか~
ということで、非常に怪しい話ばかりで恐縮なのですが、なんとなく「こうなんてるんだろうなぁ」的なところをうっすらご理解いただければと思います。
繰り返しますが、この記事は私の予想ですので、くれぐれもよろしくおねがいいたします。