SecurityBindingElement クラス

定義

実装されると、チャネルの SOAP メッセージ セキュリティをサポートするバインド要素を表す抽象クラス。

public ref class SecurityBindingElement abstract : System::ServiceModel::Channels::BindingElement
public abstract class SecurityBindingElement : System.ServiceModel.Channels.BindingElement
type SecurityBindingElement = class
    inherit BindingElement
Public MustInherit Class SecurityBindingElement
Inherits BindingElement
継承
SecurityBindingElement
派生

注釈

このクラスは、WCF の SOAP メッセージ セキュリティ バインド要素の基底クラスです。 この抽象クラスには、SymmetricSecurityBindingElementAsymmetricSecurityBindingElement、および TransportSecurityBindingElement という 3 種類の実装があります。 これらの実装は、WS-Security Policy 仕様で定義されているバインドをモデル化しています。

カスタム バインドには、特定の順序で配置されたバインド要素のコレクションが含まれます。バインド スタックの一番上を表す要素が最初に追加され、バインド スタックの 1 つ下の要素が 2 番目に追加される、という順序で配置されます。

このクラスをバインドに追加するには、次を実行します。

  1. BindingElementCollection を作成します。

  2. オプションの TransactionFlowBindingElementReliableSessionBindingElement など、バインド スタックでこのバインド要素の上になるカスタム バインド要素を作成します。

  3. BindingElementCollection メソッドを使用して、これらの要素を前に説明した順序で InsertItem に追加します。

  4. SecurityBindingElementAsymmetricSecurityBindingElementSymmetricSecurityBindingElement など、TransportSecurityBindingElement から派生するセキュリティ バインド要素のインスタンスを作成します。

  5. 派生したセキュリティ バインドをコレクションに追加します。

  6. TcpTransportBindingElement など、追加のカスタム バインド要素があればコレクションに追加します。

の使用 SecurityBindingElementの詳細については、「 SecurityBindingElement 認証モード 」および「 方法: SecurityBindingElement を使用してカスタム バインドを作成する」を参照してください。

注意

SecurityBindingElement オブジェクトが一度作成されると、そのプロパティを変更不可として扱う必要があります。 一部のプロパティで set を呼び出すと、予期しない結果になることがあります。プロパティに古い値が保持されているようにバインディングが動作し、この問題が発生したことを示すのが、ランタイム エラーのみとなる場合があります。 このように動作することがわかっているプロパティは KeyTypeMessageSecurityVersion の 2 つです。 他にも同じように動作するプロパティが存在する可能性があります。

プロパティ

AllowInsecureTransport

セキュリティで保護された混合モードのメッセージを、HTTP などのセキュリティで保護されていないトランスポートを介して送信できるかどうかを示す値を取得または設定します。

DefaultAlgorithmSuite

メッセージの暗号化とキー ラップ アルゴリズムを取得または設定します。

EnableUnsecuredResponse

WCF がセキュリティで保護された要求に対するセキュリティで保護されていない応答を送受信できるかどうかを示す値を取得または設定します。

EndpointSupportingTokenParameters

トークン パラメーターをサポートするエンドポイントを取得します。

IncludeTimestamp

各メッセージにタイム スタンプが含まれるかどうかを示す値を取得または設定します。

KeyEntropyMode

キーの作成に使用されるエントロピのソースを取得または設定します。

LocalClientSettings

クライアントが使用するローカル セキュリティ設定に固有のバインド プロパティを取得します。

LocalServiceSettings

サービスが使用するローカル セキュリティ設定に固有のバインド プロパティを取得します。

MessageSecurityVersion

メッセージ セキュリティのバージョンを取得または設定します。

OperationSupportingTokenParameters

トークン パラメーターをサポートする操作のコレクションを取得します。

OptionalEndpointSupportingTokenParameters

サービス エンドポイントに対するオプションのサポート トークン パラメーターを取得します。

OptionalOperationSupportingTokenParameters

トークン パラメーターをサポートするオプション操作のコレクションを取得します。

ProtectTokens

セキュリティ バインディング要素がトークンを保護するかどうかを取得または設定します。

SecurityHeaderLayout

このバインドのセキュリティ ヘッダー内の要素の順序を取得または設定します。

メソッド

BuildChannelFactory<TChannel>(BindingContext)

指定する SecurityBindingElement の設定とバインド コンテキストに基づいて、チャネル ファクトリを作成します。 作成されるチャネル ファクトリは SOAP メッセージ セキュリティ チャネル ファクトリで、内部的にバインディング コンテキスト (トランスポート チャネル ファクトリを格納する) に対応するチャネル ファクトリへの参照を保持します。

BuildChannelFactoryCore<TChannel>(BindingContext)

実装されると、指定した種類のチャネル ファクトリを作成します。

BuildChannelListener<TChannel>(BindingContext)

指定する SecurityBindingElement の設定とバインディング コンテキストに基づいて、チャネル リスナーを作成します。

BuildChannelListener<TChannel>(BindingContext)

指定した種類のチャネルを受け入れるよう、バインディング コンテキストからチャネル リスナーを初期化します。

(継承元 BindingElement)
BuildChannelListenerCore<TChannel>(BindingContext)

実装されると、指定した種類のチャネル リスナーを作成します。

CanBuildChannelFactory<TChannel>(BindingContext)

指定した種類のチャネル ファクトリを作成できるかどうかを判断します。

CanBuildChannelListener<TChannel>(BindingContext)

指定した種類のチャネル リスナーを作成できるかどうかを判断します。

CanBuildChannelListener<TChannel>(BindingContext)

指定した種類のチャネルに対するリスナーをバインド要素が作成できるかどうかを示す値を返します。

(継承元 BindingElement)
Clone()

派生クラスでオーバーライドされると、バインド要素オブジェクトのコピーを返します。

(継承元 BindingElement)
CreateAnonymousForCertificateBindingElement()

対称セキュリティ バインド要素を作成し、匿名クライアント認証および証明書ベースのサーバー認証用に構成します。

CreateCertificateOverTransportBindingElement()

SOAP メッセージ セキュリティを使用する証明書ベースの認証をクライアントが行うものと想定する、セキュリティ バインド要素を作成します。

CreateCertificateOverTransportBindingElement(MessageSecurityVersion)

SOAP メッセージ セキュリティを使用する証明書ベースの認証をクライアントが行うものと想定する、セキュリティ バインド要素を作成します。

CreateCertificateSignatureBindingElement()

証明書を使用してメッセージに署名するバインド要素を作成します。 このバインディング要素は、一方向のメッセージ交換に対してのみ使用でき、メッセージに署名することだけが可能です。

CreateIssuedTokenBindingElement(IssuedSecurityTokenParameters)

対称セキュリティ バインド要素を作成し、対称キーに基づいて発行されたトークンを使用するクライアント認証を必要とするように構成します。

CreateIssuedTokenForCertificateBindingElement(IssuedSecurityTokenParameters)

対称セキュリティ バインディング要素を作成し、発行されるトークンに基づくクライアント認証と、サーバー証明書に基づくサーバー認証を必要とするように構成します。

CreateIssuedTokenForSslBindingElement(IssuedSecurityTokenParameters)

対称セキュリティ バインディング要素を作成し、発行されるトークンに基づくクライアント認証と、サーバー証明書に基づくサーバー認証を必要とするように構成します。

CreateIssuedTokenForSslBindingElement(IssuedSecurityTokenParameters, Boolean)

対称セキュリティ バインディング要素を作成し、発行されるトークンに基づくクライアント認証と、サーバー証明書に基づくサーバー認証を必要とするように構成します。

CreateIssuedTokenOverTransportBindingElement(IssuedSecurityTokenParameters)

セキュリティ バインド要素を作成し、発行されたトークンを使用する SOAP セキュリティ ベースのクライアント認証を必要とするように構成します。 このバインド要素では、トランスポートはサーバー認証だけでなく、メッセージ保護 (たとえば HTTPS) も提供する必要があります。

CreateKerberosBindingElement()

対称セキュリティ バインド要素を作成し、クライアントの Kerberos トークンに基づくクライアント認証を必要とするように構成します。

CreateKerberosOverTransportBindingElement()

セキュリティ バインド要素を作成し、クライアントの Kerberos トークンを使用する SOAP セキュリティ ベースのクライアント認証を必要とするように構成します。 このバインド要素では、トランスポートはサーバー認証だけでなく、メッセージ保護 (たとえば HTTPS) も提供する必要があります。

CreateMutualCertificateBindingElement()

非対称セキュリティ バインディング要素を作成し、証明書ベースのクライアント認証と、証明書ベースのサーバー認証を必要とするように構成します。

CreateMutualCertificateBindingElement(MessageSecurityVersion)

非対称セキュリティ バインディング要素を作成し、証明書ベースのクライアント認証と、証明書ベースのサーバー認証を必要とするように構成します。

CreateMutualCertificateBindingElement(MessageSecurityVersion, Boolean)

非対称セキュリティ バインディング要素を作成し、証明書ベースのクライアント認証と、証明書ベースのサーバー認証を必要とするように構成します。

CreateMutualCertificateDuplexBindingElement()

非対称セキュリティ バインディング要素を作成し、証明書ベースのクライアント認証と、証明書ベースのサーバー認証を必要とするように構成します。 この認証モードは、双方向メッセージ交換パターンをセキュリティで保護するために使用でき、帯域外のクライアント証明書を使用するようにサービスを構成する必要があります。

CreateMutualCertificateDuplexBindingElement(MessageSecurityVersion)

非対称セキュリティ バインディング要素を作成し、証明書ベースのクライアント認証と、証明書ベースのサーバー認証を必要とするように構成します。 この認証モードは、双方向メッセージ交換パターンをセキュリティで保護するために使用でき、帯域外のクライアント証明書を使用するようにサービスを構成する必要があります。

CreateSecureConversationBindingElement(SecurityBindingElement)

対称セキュリティ バインド要素を作成し、クライアントとサービスの間にセキュリティで保護された通信を確立するように構成します。 セキュリティで保護された通信のハンドシェイクの最後に発行されるセキュリティ コンテキスト トークンを使用して、メッセージをセキュリティで保護します。 ブートストラップ セキュリティ バインディング要素は、セキュリティで保護された通信のハンドシェイク メッセージをセキュリティで保護する方法を指定します。

CreateSecureConversationBindingElement(SecurityBindingElement, Boolean)

対称セキュリティ バインド要素を作成し、クライアントとサービスの間にセキュリティで保護された通信を確立するように構成します。 セキュリティで保護された通信のハンドシェイクの最後に発行されるセキュリティ コンテキスト トークンを使用して、メッセージをセキュリティで保護します。

CreateSecureConversationBindingElement(SecurityBindingElement, Boolean, ChannelProtectionRequirements)

対称セキュリティ バインド要素を作成し、クライアントとサービスの間にセキュリティで保護された通信を確立するように構成します。 セキュリティで保護された通信のハンドシェイクの最後に発行されるセキュリティ コンテキスト トークンを使用して、メッセージをセキュリティで保護します。 ブートストラップ セキュリティ バインディング要素は、セキュリティで保護された通信のハンドシェイク メッセージをセキュリティで保護する方法を指定します。

CreateSslNegotiationBindingElement(Boolean)

対称セキュリティ バインド要素を作成し、クライアントとサーバーの間で SOAP レベルの SSL ネゴシエーションを行って、クライアント証明書が必要かどうかに留意するよう構成します。

CreateSslNegotiationBindingElement(Boolean, Boolean)

SOAP SSL ネゴシエーションを行い、クライアント証明書とキャンセルが必要かどうかに留意する、対称セキュリティ バインド要素を作成します。

CreateSspiNegotiationBindingElement()

Negotiate 認証パッケージに基づいて SOAP SSPI ネゴシエーションを行う対称セキュリティ バインディング要素を作成します。

CreateSspiNegotiationBindingElement(Boolean)

Negotiate 認証パッケージに基づいて SOAP SSPI ネゴシエーションを行う対称セキュリティ バインディング要素を作成します。

CreateSspiNegotiationOverTransportBindingElement()

セキュリティ バインド要素を作成し、Negotiate 認証パッケージを使用する SOAP SSPI ネゴシエーションに基づくクライアント認証を行うように構成します。 このバインド要素では、トランスポートはサーバー認証だけでなく、メッセージ保護 (たとえば HTTPS) も提供する必要があります。

CreateSspiNegotiationOverTransportBindingElement(Boolean)

セキュリティ バインド要素を作成し、Negotiate 認証パッケージを使用する SOAP SSPI ネゴシエーションに基づくクライアント認証を行うように構成します。 このバインド要素では、トランスポートはサーバー認証だけでなく、メッセージ保護 (たとえば HTTPS) も提供する必要があります。

CreateUserNameForCertificateBindingElement()

対称セキュリティ バインド要素を作成し、ユーザー名とパスワード ベースのクライアント認証と、証明書ベースのサーバー認証を必要とするように構成します。 作成されるバインド要素では、サービスとの通信チャネルを開く前に、帯域外のサービス証明書を使用するようにクライアントを構成する必要があります。

CreateUserNameForSslBindingElement()

対称セキュリティ バインド要素を作成し、ユーザー名とパスワード ベースのクライアント認証と、証明書ベースのサーバー認証を必要とするように構成します。 クライアントは、SOAP レベルの SSL プロトコルを使用してサーバーを認証します。

CreateUserNameForSslBindingElement(Boolean)

対称セキュリティ バインド要素を作成し、ユーザー名とパスワード ベースのクライアント認証と、証明書ベースのサーバー認証を必要とするように構成します。 クライアントは、SOAP レベルの SSL プロトコルを使用してサーバーを認証します。

CreateUserNameOverTransportBindingElement()

セキュリティ バインド要素を作成し、SOAP メッセージの一部として送信されるユーザー名とパスワードに基づくクライアント認証を行うように構成します。 このバインド要素では、トランスポートはサーバー認証だけでなく、メッセージ保護 (たとえば HTTPS) も提供する必要があります。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetProperty<T>(BindingContext)

指定した BindingContext を使用して、指定したオブジェクトを取得します。

GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
SetIssuerBindingContextIfRequired(SecurityTokenParameters, BindingContext)

要件が発行済みトークンの要件である場合、発行者との対話に使用する BindingContext を値とするトークン要件プロパティのキーを設定します。

SetKeyDerivation(Boolean)

派生キーが必要かどうかを示す値を設定します。

ToString()

このクラスの説明を返します。

適用対象

こちらもご覧ください