WCF の拡張

Windows Communication Foundation (WCF) では、実行時コンポーネントを変更し、拡張することによって、サービス ベースのアプリケーションを正確に制御および拡張できます。このセクションのトピックでは、その拡張アーキテクチャについて詳しく説明します。基本的なプログラミングの詳細については、「基本的な WCF プログラミング」を参照してください。

このセクションの内容

  • ServiceHost とサービス モデル レイヤの拡張
    サービス モデル レイヤには、基になるチャネルから受信メッセージを取得し、そのメッセージをアプリケーション コードでのメソッド呼び出しに変換し、結果を呼び出し元に送信するという役割があります。サービス モデル拡張は、ディスパッチャの機能、カスタム動作、メッセージとパラメータの途中受信、およびその他の拡張機能に関連する実行や通信の動作と機能を変更または実装します。
  • バインディングの拡張
    バインディングはエンドポイントに接続するために必要な通信の詳細設定を記述するオブジェクトです。バインディングの拡張やカスタム バインディングは、アプリケーションの各種機能をサポートするために必要なカスタム通信機能を実装します。
  • チャネル レイヤの拡張
    チャネル レイヤは、サービス モデル レイヤより下に位置し、クライアントとサービス間のメッセージの交換を担います。チャネル拡張は、セキュリティなどの新しいプロトコル機能を実装できます。また、SOAP メッセージを伝達する新しいネットワーク トランスポートの実装など、トランスポート機能も実装できます。
  • セキュリティの拡張
    WCF のセキュリティは、転送セキュリティ (整合性、機密性、および認証)、アクセス制御 (承認)、および監査で構成されます。IdentityModel 名前空間にある各クラスは、WCF でアクセス制御のために使用されます。セキュリティ アーキテクチャを理解することによって、カスタムのアクセス制御システムに対応したカスタムのクレーム タイプを作成できます。
  • メタデータ システムの拡張
    WCF のメタデータ システムは複数のクラスのグループおよびインターフェイスで、サービス ベースのアプリケーションを実装するために必要なメタデータを表します。クラスを変更または拡張するか、WSDL (Web サービス記述言語) の拡張子やカスタム WS-PolicyAttachments アサーションなどのカスタム メタデータをエクスポート/インポートするインターフェイスを実装して構成します。
  • エンコーダとシリアライザの拡張
    エンコーダとシリアライザは、データをある形式から別の形式に変換します。このセクションのトピックでは、提供されたクラスを特別な要件に合わせて拡張する方法を説明します。
  • Extending PeerChannel
    WCF のピアツーピア ネットワーク機能は、このセクションの各トピックで説明されているように、機能追加のために拡張できます。

リファレンス

System.ServiceModel

System.ServiceModel.Channels

System.ServiceModel.Description

System.IdentityModel.Claims

System.IdentityModel.Policy

System.IdentityModel.Selectors

System.IdentityModel.Tokens

関連項目

基本的な WCF プログラミング

WCF 機能の詳細

ガイドラインとベスト プラクティス