Azure AppFabricを用いたオンプレミスとAzureの連携
主要な3つの機能
Windows Azure platform AppFabricが提供する主な機能は以下の通りです。
- サービス・バス
- アクセス・コントロール
- ワークフロー(将来提供予定)
※各機能について、Windows Azure platform AppFabricの料金価格が公開されています(英語のみ)
以下では、それぞれについて説明します。
1.サービス・バス
インターネット上に公開されているWebサービスや、オンプレミス・システムに公開されているサービスなどのさまざまなサービスに対して、サービスのネーミングやサービス利用者に対するエンドポイントの発見、ルーティング、メッセージ中継を実現する機能を提供します。
公開サービスを登録するサービス・リポジトリと呼ばれる機能をもち、公開するサービスのエンドポイントを登録します。登録したサービスに仮想的なURI(Uniform Resource Identifier)を割り当てることで、インターネット越しのアプリケーションからサービスを利用する機能を実現します。
2.アクセス・コントロール
アクセス・コントロールは、複数のアカウント連携(シングル・サインオン)を実現する問い合わせベースのセキュリティ・トークン・サービス(Security Token Services)です。サービス利用者は、公開サービスの利用に必要な「トークン」を「アクセス・コントロール・サービス」に問い合わせ、発行されたトークンを利用して公開サービスにアクセスします。
「LiveID」や「OpenID」などのインターネット上で利用されるアカウントを利用した認証連携だけでなく、Active Directoryフェデレーション サービス(ADFS)を利用したオンプレミス・システムのActiveDirectoryアカウントとの認証連携も可能です。また、ユーザーIDとパスワードの組み合わせだけでなく、SSLなどで利用されるX.509デジタル証明書を利用した認証も可能です(AppFabric v1.0 SDKではX.509デジタル証明書は利用できません)。
※Think IT編集部注(2010.01.28):Windows Azure platform AppFabricの「2.アクセス・コントロール」について、説明を補足/修正しました。
3.ワークフロー(将来提供予定)
Windows Workflow Foundation(WF)ベースのワークフロー機能を提供するサービスです。WFを利用することで、オンプレミス・システムとWindows Azure platform上のシステムの非同期サービス連携を実現できます。ワークフローの構築にはVisual StudioのWFデザイナを使用することが可能です。
Azure AppFabric利用環境の構築
サンプル・アプリケーションを実行するため、以下の手順で環境構築を行います。
AppFabric SDK V1.0のインストール
AppFabric SDK V1.0からインストーラをダウンロードして、セットアップ・ダイアログに従ってインストール処理を行ってください。
※AppFabric SDK V1.0は、.NET版だけでなく、Java版、Ruby版が公開されています。.NET以外で作られたシステムとも連携が可能です。
Windows Azureポータル・サイトでのService Namespace作成
次に、 Windows Azureのポータル・サイトにおけるサービス・バスの作成方法について説明します。
AppFabric SDK V1.0で利用する「Service Namespace」を作成するため、「Windows Azureポータル・サイトのAppFabricページ」にアクセスして、「Project」を作成する必要があります。
Project Nameを入力して、「Project」の作成を行ってください(図2-1の例では「thinkitproject」)。次に、「Service Namespace」の作成を行います。
「Windows AzureポータルサイトのAppFabric」画面から、作成した「Project」を選択します。次に、「Project」画面から「Add Service Namespace」を選択して、「Service Namespace」の作成を行います。
有効な文字列を入力し、「Create」ボタンをクリックして「サービス名前空間」を作成してください(図2-2の例では「thinkitservice」)。「Service Namespace」の作成が完了すると、サービス・バスとアクセス・コントロールで利用するパラメータ値のデフォルト値を確認できます(図2-3)。
※デフォルト値を変更したい場合、コマンド・ライン・ツールである「Acm.exe」を利用する必要があります。
次ページでは、実際にAppFabric SDK V1.0を利用したサンプル・アプリケーションを動かしてみます。