次の方法で共有


WS_SECURITY_BINDING_PROPERTY_ID列挙 (webservices.h)

セキュリティ バインディング設定の指定に使用されるプロパティを識別します。 セキュリティ バインド設定は、セキュリティの説明で使用されるセキュリティ バインドに存在します。

この列挙体は 、WS_SECURITY_BINDING_PROPERTY 構造体内で使用され、 WS_SECURITY_BINDING 構造体で使用されます。 すべての値がすべてのセキュリティ バインディングに適用できるわけではありません。 それぞれのプロパティをサポートするセキュリティ バインディングの一覧については、個々の説明を参照してください。

関連する列挙型 WS_SECURITY_TOKEN_PROPERTY_ID では、セキュリティ トークン インスタンスからフィールドを抽出するためのキーが定義されていることに注意してください。 したがって、 WS_SECURITY_BINDING_PROPERTY では、チャネル/リスナーの作成時にセキュリティ バインディング設定を指定してセキュリティ トークンの作成方法と使用方法に影響を与えますが、 WS_SECURITY_TOKEN_PROPERTY_ID では、セキュリティ トークンからフィールドを抽出できます。通常は、チャネルとセキュリティが "ライブ" のときに受信メッセージからセキュリティ トークンを抽出できます。

構文

typedef enum {
  WS_SECURITY_BINDING_PROPERTY_REQUIRE_SSL_CLIENT_CERT = 1,
  WS_SECURITY_BINDING_PROPERTY_WINDOWS_INTEGRATED_AUTH_PACKAGE = 2,
  WS_SECURITY_BINDING_PROPERTY_REQUIRE_SERVER_AUTH = 3,
  WS_SECURITY_BINDING_PROPERTY_ALLOW_ANONYMOUS_CLIENTS = 4,
  WS_SECURITY_BINDING_PROPERTY_ALLOWED_IMPERSONATION_LEVEL = 5,
  WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_SCHEME = 6,
  WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_TARGET = 7,
  WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_BASIC_REALM = 8,
  WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_DIGEST_REALM = 9,
  WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_DIGEST_DOMAIN = 10,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_KEY_SIZE = 11,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_KEY_ENTROPY_MODE = 12,
  WS_SECURITY_BINDING_PROPERTY_MESSAGE_PROPERTIES = 13,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_MAX_PENDING_CONTEXTS = 14,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_MAX_ACTIVE_CONTEXTS = 15,
  WS_SECURITY_BINDING_PROPERTY_SECURE_CONVERSATION_VERSION = 16,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_SUPPORT_RENEW = 17,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_RENEWAL_INTERVAL = 18,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_ROLLOVER_INTERVAL = 19,
  WS_SECURITY_BINDING_PROPERTY_CERT_FAILURES_TO_IGNORE = 20,
  WS_SECURITY_BINDING_PROPERTY_DISABLE_CERT_REVOCATION_CHECK = 21,
  WS_SECURITY_BINDING_PROPERTY_DISALLOWED_SECURE_PROTOCOLS = 22,
  WS_SECURITY_BINDING_PROPERTY_CERTIFICATE_VALIDATION_CALLBACK_CONTEXT = 23
} WS_SECURITY_BINDING_PROPERTY_ID;

定数

 
WS_SECURITY_BINDING_PROPERTY_REQUIRE_SSL_CLIENT_CERT
値: 1
SSL を使用するときにクライアント証明書を要求するかどうかを指定する BOOL 。 次に、
既定値は FALSE です


この設定は、 のセキュリティ バインディング プロパティで指定できます。
サーバー側の WS_SSL_TRANSPORT_SECURITY_BINDING
WS_SECURITY_BINDING_PROPERTY_WINDOWS_INTEGRATED_AUTH_PACKAGE
値: 2
使用する特定の SSP パッケージ (Kerberos、NTLM、SPNEGO 間) を指定するWS_WINDOWS_INTEGRATED_AUTH_PACKAGE値
Windows 統合認証を実行する場合。 既定値は WS_WINDOWS_INTEGRATED_AUTH_PACKAGE_SPNEGO です。


この設定は、WS_TCP_SSPI_TRANSPORT_SECURITY_BINDINGWS_NAMEDPIPE_SSPI_TRANSPORT_SECURITY_BINDINGのセキュリティ バインド プロパティで指定できます。
WS_SECURITY_BINDING_PROPERTY_REQUIRE_SERVER_AUTH
値: 3
サーバー認証が必須かどうかを指定する BOOL 。 現在、この設定
は、Windows 統合認証ベースを使用する場合にのみ適用されます
セキュリティ。 これを FALSE に設定することは強く
サーバー認証を行わないと、悪意のあるパーティが
サーバーを検出できないため、マスカレードを実行できません。


既定値は、WS_TCP_SSPI_TRANSPORT_SECURITY_BINDINGで使用する場合は TRUEWS_NAMEDPIPE_SSPI_TRANSPORT_SECURITY_BINDING で使用する場合は FALSEです。


サーバー認証を行わないプロトコル (NTLM など) が
を許可するには、このプロパティを に設定する必要があります
FALSE

この設定は、セキュリティ バインディング プロパティでのみ指定できます
クライアント側の WS_TCP_SSPI_TRANSPORT_SECURITY_BINDINGWS_NAMEDPIPE_SSPI_TRANSPORT_SECURITY_BINDING
WS_SECURITY_BINDING_PROPERTY_ALLOW_ANONYMOUS_CLIENTS
値: 4
を指定する BOOL
サーバーが匿名で認証されたクライアントを許可する必要があるかどうか
Windows 統合認証ベースのセキュリティを使用する。 既定値
FALSE です


この設定は、セキュリティ バインディング プロパティでのみ指定できます
サーバー側の WS_TCP_SSPI_TRANSPORT_SECURITY_BINDINGWS_NAMEDPIPE_SSPI_TRANSPORT_SECURITY_BINDING
WS_SECURITY_BINDING_PROPERTY_ALLOWED_IMPERSONATION_LEVEL
値: 5
Windows 使用時にクライアントが許可する偽装レベルを指定するSECURITY_IMPERSONATION_LEVEL値
サービスと通信するための統合認証。 既定の偽装レベルは SecurityIdentification です


この設定は、セキュリティ バインディング プロパティで指定できます
WS_TCP_SSPI_TRANSPORT_SECURITY_BINDINGWS_NAMEDPIPE_SSPI_TRANSPORT_SECURITY_BINDINGWS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING
WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_SCHEME
値: 6
使用する HTTP ヘッダー認証モードを指定する ULONG 。 指定する値は、 の 1 つ以上の組み合わせである必要があります。
WS_HTTP_HEADER_AUTH_SCHEME_NONEWS_HTTP_HEADER_AUTH_SCHEME_BASIC
WS_HTTP_HEADER_AUTH_SCHEME_DIGESTWS_HTTP_HEADER_AUTH_SCHEME_NTLM 、または
WS_HTTP_HEADER_AUTH_SCHEME_NEGOTIATE。 通信に使用するバインディングでこのプロパティを設定する場合
HTTP プロキシ サーバーでは、1 つのスキームのみを設定し、 WS_HTTP_HEADER_AUTH_SCHEME_NONE
は使用できません。


または、このプロパティを WS_HTTP_HEADER_AUTH_SCHEME_PASSPORT に設定することもできます。
WS_HTTP_HEADER_AUTH_SCHEME_PASSPORT を他の値と組み合わせることはできません。
HTTP プロキシ サーバーに対する認証。



WS_HTTP_HEADER_AUTH_SCHEME_NONE はクライアントでのみサポートされます。 単独で設定すると、HTTP ヘッダー認証が無効になります。
他のスキームと組み合わせて設定すると、サーバーがヘッダー認証を必要としない場合に、クライアントはヘッダー認証なしでフォールバックできます。
それ以外の場合、クライアントが複数の認証スキームを指定し、サーバーで認証が必要ない場合、要求は失敗します。


1 つの認証スキームを設定すると、クライアントはそのスキームが設定された状態で要求を実行します。 複数のスキームが設定されている場合は、
クライアントはまず、認証されていない空の要求を送信することで、サポートされているスキームのサーバーをプローブします。 クライアントが
と サーバーは複数のサポートされているスキームを共有します。クライアントは、次の順序でスキームに優先順位を付け、最初のスキームを相互に選択します
サポートされている 1 つ:



スキームが WS_HTTP_HEADER_AUTH_SCHEME_NEGOTIATE に設定され、Kerberos 認証がネゴシエートされると、サーバー プリンシパル名 (SPN)
used は、サーバーの DNS 名から派生します。 存在する場合でも、WS_ENDPOINT_IDENTITYは無視されます。 認証のために
成功するには、サーバーがその SPN の Kerberos チケットの暗号化を解除できる必要があります。


スキームが WS_HTTP_HEADER_AUTH_SCHEME_DIGEST または WS_HTTP_HEADER_AUTH_SCHEME_BASIC に設定されている場合は、資格情報の種類として WS_STRING_WINDOWS_INTEGRATED_AUTH_CREDENTIAL を使用する必要があります。

注: "localhost"、"127.0.0.1" などの方法を使用して、ローカル コンピューターをサーバー アドレスとして参照すると、エラーが発生する可能性があります
WS_HTTP_HEADER_AUTH_SCHEME_NTLM または WS_HTTP_HEADER_AUTH_SCHEME_NEGOTIATE。 代わりにマシン名を使用することをお勧めします。


この設定は、 WS_HTTP_HEADER_AUTH_SECURITY_BINDINGのセキュリティ バインド プロパティで指定できます。
既定値は WS_HTTP_HEADER_AUTH_SCHEME_NEGOTIATE です。
WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_TARGET
値: 7
使用する HTTP ヘッダー認証ターゲットを指定する WS_HTTP_HEADER_AUTH_TARGET 値。 このプロパティは指定できます
http ヘッダー認証のセキュリティ バインディングかどうかを示すクライアント側の
はターゲット サーバーまたはプロキシ サーバー用です。 既定値は WS_HTTP_HEADER_AUTH_TARGET_SERVICEです。


この設定は、 WS_HTTP_HEADER_AUTH_SECURITY_BINDINGのセキュリティ バインド プロパティで指定できます。
WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_BASIC_REALM
値: 8
WS_STRINGは、基本的な HTTP ヘッダーを含む領域として使用されます
認証スキーム。


この設定は、 のセキュリティ バインディング プロパティで指定できます。
サーバー側 のWS_HTTP_HEADER_AUTH_SECURITY_BINDING
WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_DIGEST_REALM
値: 9
ダイジェスト HTTP で領域として使用されるWS_STRING
ヘッダー認証スキーム。


この設定は、 のセキュリティ バインディング プロパティで指定できます。
サーバー側 のWS_HTTP_HEADER_AUTH_SECURITY_BINDING
WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_DIGEST_DOMAIN
値: 10
ダイジェストでドメイン名として使用されるWS_STRING
HTTP ヘッダー認証スキーム。


この設定は、 のセキュリティ バインディング プロパティで指定できます。
サーバー側 のWS_HTTP_HEADER_AUTH_SECURITY_BINDING
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_KEY_SIZE
値: 11
から要求されるセキュリティ トークンのキー サイズ (ビット単位) を指定する ULONG
発行者。 指定しない場合、発行者はサイズを決定します。 WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDINGと共に使用してもよい。
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_KEY_ENTROPY_MODE
値: 12
発行された対称キーのキーにエントロピがどのように寄与するかを指定するWS_SECURITY_KEY_ENTROPY_MODE値
トークン。 既定値は WS_SECURITY_KEY_ENTROPY_MODE_COMBINED です。
この設定は、 WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING 構造体のセキュリティ バインド プロパティで指定できます。
WS_SECURITY_BINDING_PROPERTY_MESSAGE_PROPERTIES
値: 13
指定する WS_MESSAGE_PROPERTIES のセット
2 つのメッセージを作成する際に、
は、交換を取得するセキュリティ トークンに使用されます。 このプロパティが
が指定されていない場合、要求メッセージと応答メッセージは を使用して作成されます。
既定のメッセージ プロパティ。 この設定は、 WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING 構造体のセキュリティ バインド プロパティで指定できます。
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_MAX_PENDING_CONTEXTS
値: 14
サービスで保留中のセキュリティ コンテキストの最大数を指定する ULONG
アプリケーション (またはサービス モデル) によってとして受け入れられません。
チャンネル。 既定値は 100 です。 この設定は、 WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING 構造体のセキュリティ バインド プロパティで指定できます。
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_MAX_ACTIVE_CONTEXTS
値: 15
サービス上のアクティブなセキュリティ コンテキストの最大数を指定する ULONG 。 既定値は 1000 です。
この設定は、 WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING 構造体のセキュリティ バインド プロパティで指定できます。
WS_SECURITY_BINDING_PROPERTY_SECURE_CONVERSATION_VERSION
値: 16
使用する WS-SecureConversation のバージョンを指定するWS_SECURE_CONVERSATION_VERSION値。 既定値は WS_SECURE_CONVERSATION_VERSION_FEBRUARY_2005 です。
この設定は、 WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING 構造体のセキュリティ バインド プロパティで指定できます。
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_SUPPORT_RENEW
値: 17
を指定する BOOL
確立されたセキュリティ コンテキストでの更新操作をサポートするかどうか。 クライアントで、これが
既存のセキュリティ コンテキストを更新する代わりに、新しいコンテキストを FALSE に設定する
が確立されます。 サーバーでは、すべての受信更新メッセージが
拒否。 既定は TRUE です。
この設定は、 WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING 構造体のセキュリティ バインド プロパティで指定できます。
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_RENEWAL_INTERVAL
値: 18
セキュリティ コンテキストを更新する前の間隔を含む WS_TIMESPAN 構造体。 クライアントでは、既定値は 10 時間です
と は、セッションが事前に更新された後の時間を示します。 サーバーでは、既定値は 15 時間です
と はコンテキストの有効期間を示します。 その制限に達する前に、サーバー コンテキストを更新する必要があります。
この設定は、 のセキュリティ バインディング プロパティで指定できます。
WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING 構造体。
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_ROLLOVER_INTERVAL
値: 19
更新後に古いセキュリティ コンテキスト トークンを受け入れる時間間隔を含む WS_TIMESPAN 構造体。 既定値は 5 分です。
この許容間隔は、セッションの更新中にアプリケーション メッセージをスムーズに処理するために提供されます。
この設定は、 のセキュリティ バインディング プロパティで指定できます。
WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING 構造体。
WS_SECURITY_BINDING_PROPERTY_CERT_FAILURES_TO_IGNORE
値: 20
クライアントによって無視される証明書検証エラーのセットを指定する ULONG
リモート エンドポイントは、関係なく成功します。
WS_CERT_FAILUREまたは 0 で定義されている値の任意の組み合わせを指定できます。 既定値は WS_CERT_FAILURE_REVOCATION_OFFLINE です。
この設定は、 のセキュリティ バインディング プロパティで指定できます。
クライアントのWS_SSL_TRANSPORT_SECURITY_BINDING構造。


証明書の検証エラーを無視すると、アプリケーションが潜在的なセキュリティの脆弱性にさらされる可能性があります。
このプロパティの使用は慎重に評価する必要があります。
WS_SECURITY_BINDING_PROPERTY_DISABLE_CERT_REVOCATION_CHECK
値: 21
証明書失効チェックの状態を指定する BOOLTRUE に設定すると、証明書失効チェックは無効になります。 既定値は FALSE です。
この設定は、 のセキュリティ バインディング プロパティで指定できます。
クライアントのWS_SSL_TRANSPORT_SECURITY_BINDING構造。


証明書失効チェックを無効にすると、アプリケーションが潜在的なセキュリティの脆弱性にさらされる可能性があります。
このプロパティの使用は慎重に評価する必要があります。
WS_SECURITY_BINDING_PROPERTY_DISALLOWED_SECURE_PROTOCOLS
値: 22
WS_SECURITY_BINDING_PROPERTY_CERTIFICATE_VALIDATION_CALLBACK_CONTEXT
値: 23
送信要求操作ごとに呼び出されるコールバックを指定する WS_CERTIFICATE_VALIDATION_CALLBACK_CONTEXT 構造体。 これにより、アプリケーションは要求の接続に関連付けられている証明書を検証できます。

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ]
Header webservices.h