[EMS] 社内の Web サイトに社外からアクセスしたいなぁ・・・。それも簡単で安全に。

そんな都合のよい機能なんてあるわけな・・・ あるんです!!

どうも、Enterprise Mobility Suite (EMS) 担当の成田です。
今回は、社内でお使いの Web サイトを社外からご利用いただくことができる機能 (Azure Active Directory Application Proxy、以降 AADAP) をご紹介します。

本機能は Azure Active Directory の特定エディション (Premium または Basic) でご利用いただくことができます。もちろん EMS にも含まれます。
Azure Active Directory のエディションの違いについては下記をご確認ください。(ページ内では “アプリケーション プロキシ” と記載されている機能です。)

Azure Active Directory のエディション
https://azure.microsoft.com/ja-jp/documentation/articles/active-directory-editions/

●概要
AADAP とは、ずばり、 社内の Web サイトを社外から安全に利用する ための機能です!
クラウドやモバイルを活用した働き方の変化に伴い、「いつでも」「どこでも」「どんなデバイスからでも」業務を行える環境が求められています。
インターネット越しに社内リソースにアクセスしたい場合、Office 365 をはじめとする SaaS アプリを利用する場合は問題ないとして、社内の Web サイトについても社外から利用したいといったニーズも多いのではないでしょうか。
社内で利用している Web サイトを社外から利用する場合、一般的には VPN や SSL-VPN のリバース プロキシを DMZ に配置することをご検討いただくことも多いと思いますが、その場合はネットワーク構成の変更や追加コストが発生します。
Azure Active Directory Premium や EMS (Enterprise Mobility Suite) のライセンスを保有しているお客様は、今回ご紹介する AADAP を利用することができますので、ネットワーク構成の変更や追加コストが発生することなく、上記のニーズに応えることができます。

仕組みを簡単に表すと下図のようになります。

ユーザーは公開された Web アプリケーションの URL (クラウド サービスとして提供される AADAP) にアクセスし、AADAP と社内ネットワークにインストールされたコネクタが中継して通信を行い、ユーザーに Web コンテンツを提供します。
コネクタと AADAP 間は、コネクタから AADAP への 443 ポート (送信方向) の通信になっているため、DMZ 上のファイアウォールなどで受信方向の追加のポート開放は通常は不要です。(※必要なポートは後述)
当然、クライアントから AADAP への通信も HTTPS で行いますので、通信全体の安全を担保しながら社内の Web サイトを社外に公開することが可能です。

さらに、Azure Active Directory Premium を認証基盤として利用するため、下記のような Azure Active Directory の一般的なメリットも享受できます。

・社内のActive Directory と同期を行うことで、社内でお使いの資格情報を使用して認証を行うことができる (Office 365 をお使いの場合は、それと同じ資格情報で認証/SSO できる)
・MFA や条件付きアクセスなどの認証強化機能を利用できる

コネクタから AADAP への送信方向の通信では以下のポートが使用されます。これらのポートはすべて開放する必要があります。

●設定方法
AADAP の設定方法はについては、以下の URL に Step By Step が公開されておりますので参考にしてください。

Azure AD アプリケーション プロキシの有効化
https://azure.microsoft.com/ja-jp/documentation/articles/active-directory-application-proxy-enable/

Azure AD アプリケーション プロキシを使用してアプリケーションを発行する
https://azure.microsoft.com/ja-jp/documentation/articles/active-directory-application-proxy-publish/

上記にない情報を補足すると、コネクタは複数のサーバーにインストールすることで冗長構成をとることが可能です。
また、コネクタは ”コネクタ グループ” というグループで管理することができ、各グループごとに公開するアプリケーションを分けることができます。
コネクタ グループの使用イメージを 2 つ紹介します。

1 つ目の例です。

コネクタ グループ 1 には 2 台のコネクタが紐づけられており、2 つの Web サイトを公開しています。この構成の場合、コネクタ 1 のサービスがダウンした場合でもコネクタ 2 のみで Web サイトの公開を継続できます。
コネクタ グループ 2 には 1 台のコネクタが紐づけられており、1 つの Web サイトを公開しています。この構成の場合、コネクタ 3 のサービスがダウンするとユーザーに Web サイトを公開できなくなります。

2 つ目の例です。

コネクタ グループは 1 つだけであり、全てのコネクタがすべての Web サイトを公開しています。この構成の場合、コネクタ 1 とコネクタ 2 の 2 台のサービスがダウンした場合でも、コネクタ 3 がすべての Web サイトの公開を継続できます。(ただし、全てのユーザー リクエストの負荷を 1 台のコネクタで処理できるかは別の話ですが・・。)

●多要素認証
AADAP で公開する Web サイトを参照する際、ユーザーの本人確認を強化するために多要素認証を有効化することが可能です。
オプションは以下の 3 つです。

・多要素認証を常に要求する (Require Multi-factor authentication)
・会社のネットワーク外からアクセスする場合に多要素認証を要求する (Require Multi-factor authentication when not at work)
・会社のネットワーク外からのアクセスを拒否する (Block access when not at work)

AADAP で公開するアプリケーションの MFA 関連の設定は下記です。“ルール” セクションに記載されている 3 つのオプションがそれぞれ上記に該当します。(at work の翻訳が微妙ですが・・上記の意味に読み替えてください)

公開するアプリケーションに MFA を設定する場合は下記の URL もご確認ください。

条件付きアクセスの使用
https://azure.microsoft.com/ja-jp/documentation/articles/active-directory-application-proxy-conditional-access/

●SSO の設定
これまで紹介してきた AADAP ですが、SSO の構成を行うことも可能です。
例えば、Office 365 にアクセスを行っていたユーザーが https://web1.contoso.com という URL で公開された Web サイトにアクセスを行うと、資格情報の入力なしで社内サイトの https://web1 のコンテンツをブラウザに表示することができます。
このような SSO は Kerberos の制約付き委任 (KCD) という仕組みを利用するため、認証方式として統合 Windows 認証 (IWA) を利用している Web サイトでなければならないという条件があります。
社内で使用している Web サイトが Windows Server でホストされている場合には IWA を認証方式として使用している場合も多いと思いますので、その場合は SPN などのいくつかの設定を行うことで SSO を構成できます。
IWA 以外の認証方式のサイトの場合 SSO はできませんが、サイトを公開すること自体は可能ですのでご安心ください。
SSO の設定方法については下記に詳細が紹介されています。

アプリケーション プロキシを使用したシングル サインオン
https://azure.microsoft.com/ja-jp/documentation/articles/active-directory-application-proxy-sso-using-kcd/

●トラブル シューティング
AADAP の構成を行う上で問題が発生した場合、下記のトラブル シューティング ガイドが役に立ちます。

アプリケーション プロキシのトラブルシューティング
https://azure.microsoft.com/ja-jp/documentation/articles/active-directory-application-proxy-troubleshoot/

例えば、統合 Windows 認証の Web サイトの SSO を構成する場合は SPN の設定を正しく行う必要がありますが、設定が正しくない場合のトラブルシューティングにはネットワークや認証の知識と経験が必要です。
上記のガイドには想定されるトラブルと対処方法が非常に細かく記載されているので、AADAP 関連の問題が発生した際にはきっとお役に立つと思います。是非参考にしてください。

●最後に
クラウドとモバイルを活用した働き方が今後ますます重要になることについては疑う余地がないと思われます。
例として、Office 365 や他の SaaS アプリを、様々なモバイル デバイス (iOS、Android、Windows) からアクセスして業務を行うという働き方が想定されます。
このようなワークスタイルにおいて業務生産性は間違いなく向上しますが、一方で ID/デバイス/データのセキュリティが懸念になる場面があることも事実であり、このような懸念に対するソリューションとしてマイクロソフトでは EMS (Enterprise Mobility Suite) を提供しています。
EMS には今回ご紹介した AADAP 以外にも、クラウドとモバイルを活用したワークスタイルを支える機能が提供されておりますので、ワークスタイル変革を計画されている企業様においては、ぜひご検討いただけると幸いです。

いつでも、どこでも、どのデバイスでも! ユーザーの生産性と企業のセキュリティを両立させるソリューション
https://www.microsoft.com/ja-jp/server-cloud/products-Enterprise-Mobility-Suite.aspx