Microsoft Windows Azure Platform AppFabricは業務アプリケーションとAzureクラウドのサービスやリソースとを結びつけ、異なるドメインに所属しているユーザー間の相互運用を容易にする有益な一連の技術である。主なコンポーネントはサービスバスとアクセスコントロールサービスだ。
・
サービスバス(SB)はローカルアプリケーションとクラウド上のサービスやリソースとの間を仲介する。サービスバスは認証や承認を通じたセキュアなコミュニケーションチャネルの作成だけではなく、ローカルアプリケーションとクラウドサービスの間のシングルコネクションポイントとしての役割も果たし、開発者が自分の仕事に専念できるようにしてくれる。また、クラウドベースのアプリケーションから業務アプリケーションに接続することもでき、これには業務データベースや業務サービスへのアクセスも含まれる。
サービスバスの主な機能は以下の通り。
- インターネットからアクセス可能なURLを通したサービスの発見。
- 送信者、受信者間の一方向メッセージング。ユニキャスト、マルチキャストデータグラムでの配信をサポートします。
- 双方向コミュニケーションをサポートする送信者、受信者間の全二重コネクション型セッション。
- ネットワーク境界を走査してNAT経由のダイレクトなエンドツーエンド接続を作成する全二重コネクション型ピアツーピアセッション。
- 複数のパブリッシャと複数のサブスクライバが同時に利用可能なサービスのトピックマネージメントやイベント配信システム。
- .NETプラットフォーム以外からのRESTやHTTPアクセスのサポート。
- DNSやトランスポートに依存しないグローバルな階層名前空間。
- サービスへの匿名アクセスサポート(匿名アクセスを許可すれば)。
サービスバスはあるユーザ(ユーザAとする)とAzureクラウドとの間のコミュニケーション問題を解決する。もし別のユーザ(ユーザBとする)だったら、同じように参加できるだろうか? ユーザBが異なるID管理システムを使っていたとしたらどうなるだろうか? どうやって彼はユーザAのサービスやリソースにアクセスするのだろうか? ユーザBが彼のIDでユーザAのリソースを使えるように、アイデンティティ連携契約を結ぶ必要があるだろうか? これにはアクセスコントロールサービス(ACS)が関わってくる。アクセスコントロールサービスは異なるユーザアプリケーションとそれらのリソースとの間を仲介する。まるでそれらが同じドメインに所属しているようにし、リソースのアクセス制御を提供する。
アクセスコントロールサービスの主な機能は以下の通り。
- シンプルなWebインターフェースやAPIによる発行者信頼のセットアップ。
- 最低限のコーディングのみでアクティブディレクトリやその他のアイデンティティインフラストラクチャをサポートします。
- X.509証明書を含む複数の証明書のサポート。
- RESTを含む標準プロトコルのサポート。
- 組織の外で動くアプリケーションでも中で動くアプリケーションでもサービスに依存できます。
- データやサービスからの要求によるアプリケーションとユーザの検証。
サービスバスやアクセスコントロールサービスはさまざまなプラットフォームからアクセスすることができる。これらはVisual Studio 2008と.NETフレームワーク3.5で扱うことができるMicrosoft .NET Services SDKから利用可能である。.NET Services SDK for Java Developersや.NET Services for Rubyもある。
Windows Azure AppFabricとWindows Server AppFabricとを混同しないでほしい。Windows Server AppFabricは以前Dublin and Velocityとして知られていた技術を含む、IIS上で動作するWebサービスアプリケーションの構築と管理のためのテクノロジである。