2015年10月23日金曜日

【Office 365】Active Directory Authentication Library (ADAL) とは?

ADALについての説明は以下のサイトに記載があります。
https://blogs.office.com/2014/11/12/office-2013-updated-authentication-enabling-multi-factor-authentication-saml-identity-providers/

一言で言うと、『Officeクライアントの認証方式(≒フロー)が変わる』ということになります。

これまでADFSを使用したフェデレーション構成におけるOffice 365の認証に関しては、Webブラウザベース(Office 365ポータルやSharePoint Online)のアクセスと各Officeクライアント(OutlookやSkype for Business)では認証の経路が異なりました。下記のWebページの記載内容を基に簡単にまとめてみたいと思います。

https://community.office365.com/ja-jp/w/sso/1002
http://blog.o365mvp.com/2013/07/24/adfs_recent_change_notes/

【Webブラウザの場合】
ブラウザが認証のための各コンポーネントにアクセスし、トークンやチケットのやり取りをします。













【Outlookの場合】
Outlookに変わり、Exchange Onlineが代理でトークンやチケットのやり取りをします。













今後、ADALが実装されるとすべての認証経路が【Webブラウザの場合】に統一されるようになるというのが大きな特徴になります。ではいったいこれにより何がうれしいのかというと、これまでWebブラウザのような認証フローでなかったために、実現できなかった下記のようなことが実現可能になります。


①Office 2013 クライアント アプリケーションで多要素認証(MFA)が使用できる
従来より、例えばOffice 365の標準機能を使用することにより、以下のような多要素認証を構成することができました。
・モバイル デバイスにかかってきた電話への応対
・モバイル アプリに提示される認証コードの入力



















ただし、OutlookやLyncを使用する場合には上記の認証構成に対応していなかったため、多要素認証を構成した場合の専用のパスワード(="アプリケーションパスワード")というものを使用してExchange Online/Lync Onlineにアクセスする必要がありました。(そのため、厳密な「多要素認証」とは言えませんでした。)これが、ADALが実装されることにより、上記のような多要素認証機能も使用できるようになり、Office 365のサービスを通貫してよりセキュアな認証構成を取ることが可能になります。

※アプリケーションパスワードについては下記のサイトに説明があります。
http://azuread.net/2014/02/17/office365%E3%81%A7%E5%A4%9A%E8%A6%81%E7%B4%A0%E8%AA%8D%E8%A8%BC%E3%82%92%E5%AE%9F%E8%A3%85%E3%81%97%E3%81%9F%E5%A0%B4%E5%90%88%E3%81%AE%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7/


②SAMLベースのIDプロバイダーによるサインインができる
Office 365を使用する場合には、ADFSを使用したフェデレーション構成を取ることが一般的ですが、サードパーティ製の認証プロバイダーを使用してシングルサインオン構成を行うことも可能です。ただし、これまでは各クライアントが認証のためのやり取りを行うことができなかったため、下記のようなことができませんでした。
・Office 365 ProPlus のライセンス認証
・Lync やその他のクライアント アプリケーションから Office 365 への接続
・Word、Excel、PowerPoint などのファイルの SharePoint Online への保存

ADALの実装により、これらのことが実現可能になります。すでにサードパーティ製の認証プロバイダーが社内で構成されており、Office 365を使用するにあたり、その基盤を利用したい、というお客様にはメリットがあるかと思います。


③スマートカードおよび証明書ベースの認証が構成できる
ADFSを構成している環境においては、容易にスマートカードや証明書を使用した認証を構成することができます。ADALによりこれらが使用可能になりますので、例えば以下のような要件を満たすことができます。
・『ID/PW以外に、ユーザーが保持しているスマートカードを使用して、もう一段階の認証を入れたい。』
・『証明書を配布されているデバイスからのみアクセスをさせるようにしたい。』























※ADFSを使用した多要素認証の構成手順はかなり煩雑です…。そのうちまとめようと思いますが、以下のようなサイトが参考になるかと思います。
http://www.atmarkit.co.jp/ait/articles/1503/05/news025.html
http://www.atmarkit.co.jp/ait/articles/1504/02/news010.html
https://technet.microsoft.com/ja-jp/library/80b48521-5bfd-4c87-8a7a-9ec7a6c3351f#BKMK_4
http://azuread.net/2013/09/18/windows-server-2012-r2%e3%82%92%e4%bd%bf%e3%81%a3%e3%81%a6ios%e3%81%a0%e3%81%91%e3%81%8coffice365%e3%81%ab%e3%82%a2%e3%82%af%e3%82%bb%e3%82%b9%e3%81%a7%e3%81%8d%e3%82%8b%e3%82%88%e3%81%86%e3%81%ab/


④ADFS環境下において、Outlookがシングルサインオンが可能になる
これまではADFSを使用したフェデレーション構成にした環境でも、Outlookを使用してExchange Onlineに接続する場合には、毎回ID/PWを入力する(または初回接続時にID/PWを保存する)必要がありました。ADALが実装されることにより、このような操作が不要になります。


これらよりOffice 365の認証がより統合され、よりセキュアな環境が構築できる、ということが言えるようになるかと思います。


そしてこのADALですが、(A) Office 365テナント側の対応と (B) クライアント側の対応が両方で必要となります。

(A) Office 365テナント側の対応
現在はPublic Previewというステータスになります。一般的な機能は使用可能になっていますが、一部の機能は使用できません。
https://blogs.office.com/2015/03/23/office-2013-modern-authentication-public-preview-announced/

上記サイトから抜粋すると、使用できないのは以下の機能のようです。(これ以外にもいくつか列挙されていますが、それらはクライアント側のパッチで使用可能になりそうですね。)
・ADFSのクライアントアクセスフィルタリングのポリシーが使用不可。
・Skype for Business (formerly Lync) クライアントについてはMFAが使用不可。

(B) クライアント側の対応
Officeクライアントについては下記のパッチによりADAL対応が行われています。
https://support.microsoft.com/en-us/kb/2965218#bookmark-registry

ただし、パッチを適用しただけではADALは有効にはなっていません。上記パッチによりADALを制御するレジストリが使用可能になり、それにより有効化することができるようになる(デフォルトでは無効)、ということになります。
https://support.office.com/en-us/article/Enable-Modern-Authentication-for-Office-2013-on-Windows-devices-7dc1c01a-090f-4971-9677-f1b192d6c910?ui=en-US&rs=en-US&ad=US



以上が、ざっくりのADALに関する概要になります。



0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。