Exchange の EWS を使用して作成できる、最も一般的な種類のアプリケーションについて説明します。
EWS および Exchange のアーキテクチャ は一貫した開発モデルを提供します。この開発モデルを使用して、最も一般的な種類のアプリケーションを一貫した方法で作成できます。これらのアプリケーションには、以下が含まれます。
クライアント アプリケーション — EWS を使用して Exchange データにアクセスするスタンドアロン アプリケーション。 Outlook および Outlook Web App は、クライアント アプリケーションの例です。
ポータル アプリケーション — 空き時間情報や連絡先情報など、Exchange から受け取った情報を含めることによって既存の Web ページを拡張するアプリケーション。 Exchange データを取得する、SharePoint Web パーツは、ポータル アプリケーションの例です。
サービス アプリケーション — Exchange からのデータを既存のシステムに組み入れるまたは同期させるために使用されるバックグラウンド ジョブ。 たとえば、Exchange からの連絡先情報を CRM アプリケーションに同期させるアプリケーションです。
これらのアプリケーション モデルはそれぞれ、共通コード ベースを使用して Exchange から情報を取得できます。したがって、情報を取得するために使用される EWS コードをクライアント アプリケーション、ポータル アプリケーション、またはサービス アプリケーションの間で変更する必要はありません。 あるアプリケーションと次のアプリケーションで変わる可能性があるのは、メールボックス アクセスと認証メカニズムです。 たとえば、クライアント アプリケーションは一般に、直接ユーザー アクセスと基本認証または NTLM 認証を使用するのに対して、サービス アプリケーションはメールボックス アクセスと OAuth 認証に偽装を使用する傾向があります。
クライアント アプリケーション
EWS クライアント アプリケーションは、EWS を使用して Exchange ストアから情報を取得するスタンドアロン アプリケーションです。 EWS クライアント アプリケーションは、直接クライアント アクセスまたは代理人アクセスを使用して、メールボックス ストアからデータを取得します。 EWS を使用するクライアント アプリケーションの例を次に示します。
Outlook (メール ヒント、可用性、ユーザー不在時状態などの機能の中)
デバイス用 OWA
Outlook for Mac 2011
Lync (空き時間情報用)
クライアント アプリケーションは一般に、直接アクセスと基本認証または NTLM 認証を使用します。そのためユーザーは、自分のログオン資格情報を使用して自分のメールボックス内の情報にしかアクセスできません。 クライアント アプリケーションは、別のユーザーのメールボックスにアクセスする権限が与えられているユーザーの代理人アクセスもサポートする必要があります。
ポータル アプリケーション
ポータル アプリケーションは、既存の Web ページまたはポータルを拡張して、Exchange メールボックス情報をページの個人用コンポーネントとして含めます。 SharePoint Web パーツは最も一般的なポータル アプリケーションであり、未読メッセージ、最新のメッセージ、予定表イベントなどの Exchange メールボックス データを、一般的に表示される SharePoint ポータル ページと共に表示することで、ユーザーにパーソナライズされたエクスペリエンスを提供します。 EWS ポータル アプリケーションは、直接クライアント アクセス、委任アクセス、または偽装を使用して、メールボックス ストアからデータを取得できます。 Exchange 2013 と SharePoint 2013 はどちらもサーバー間認証の OAuth 承認プロトコルをサポートしているため、OAuth は最もシームレスで安全な認証方法を提供します。
サービス アプリケーション
通常、サービス アプリケーションは、システムと Exchange ストアの間でデータを関連付けるために Exchange に拡張される既存のアプリケーションに組み込まれているバックグラウンド ジョブです。 通常、サービス アプリケーションにはユーザー インターフェイスがないため、認証とアクセスに偽装または OAuth を使用します。 EWS サービス アプリでは、ユーザーを偽装するサービス アカウントを作成するのが一般的です。これは、ユーザーのセットを偽装し、それらのアカウントのメールボックス操作を実行するためのアクセス許可を 1 つのアカウントに付与できるためです。 たとえば、EWS サービス アプリケーションでは、サービス アカウントと偽装を使用して、CRM ソリューションのマーケティング リストと Exchange 配布グループの間でデータを同期できます。