Win32 API 日本語リファレンス
ホームNetworking.WindowsWebServices › WS_EXTENDED_PROTECTION_POLICY

WS_EXTENDED_PROTECTION_POLICY

列挙型
基底型i4

メンバー 3

名前10進16進説明
WS_EXTENDED_PROTECTION_POLICY_NEVER10x1Extended Protection のデータは検証されません。
WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED20x2

クライアント システムが Extended Protection 機能をサポートしている場合、認証時に Extended Protection のデータが検索され、検証されます。サポートしていない場合は無視されます。

サーバーは、クライアントのオペレーティング システムが Extended Protection をサポートしているにもかかわらず Extended Protection のデータを含めないことを選択したのか、それとも Extended Protection をサポートしていないのかを判別できます。前者は安全でないため拒否されます。後者はこのフラグを使用する場合に許可されます。

注: クライアントが Extended Protection 機能をサポートしているにもかかわらず、認証データに Extended Protection のデータを含めなかった場合、この設定では要求が失敗します。このシナリオは、オペレーティング システムには修正プログラムが適用されているものの、クライアントの Web サービス実装が必要なデータを送信しない場合に発生する可能性があります。

これが既定値です。

WS_EXTENDED_PROTECTION_POLICY_ALWAYS30x3Extended Protection のデータが存在することが必須であり、常に検証されます。Extended Protection に対応していないクライアントは、このフラグを設定したサーバーに対して認証できません。

公式ドキュメント

Extended Protection のデータを検証するかどうかを定義します。このプロパティはサーバーでのみ利用でき、WS_CHANNEL_BINDINGWS_SSL_TRANSPORT_SECURITY_BINDING と、WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING または WS_HTTP_HEADER_AUTH_SECURITY_BINDING のいずれかと共に使用される場合にのみ設定できます。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum WS_EXTENDED_PROTECTION_POLICY : int {
    WS_EXTENDED_PROTECTION_POLICY_NEVER = 1,
    WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED = 2,
    WS_EXTENDED_PROTECTION_POLICY_ALWAYS = 3
} WS_EXTENDED_PROTECTION_POLICY;
public enum WS_EXTENDED_PROTECTION_POLICY : int
{
    WS_EXTENDED_PROTECTION_POLICY_NEVER = 1,
    WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED = 2,
    WS_EXTENDED_PROTECTION_POLICY_ALWAYS = 3,
}
Public Enum WS_EXTENDED_PROTECTION_POLICY As Integer
    WS_EXTENDED_PROTECTION_POLICY_NEVER = 1
    WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED = 2
    WS_EXTENDED_PROTECTION_POLICY_ALWAYS = 3
End Enum
import enum

class WS_EXTENDED_PROTECTION_POLICY(enum.IntEnum):
    WS_EXTENDED_PROTECTION_POLICY_NEVER = 1
    WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED = 2
    WS_EXTENDED_PROTECTION_POLICY_ALWAYS = 3
// WS_EXTENDED_PROTECTION_POLICY
pub const WS_EXTENDED_PROTECTION_POLICY_NEVER: i32 = 1;
pub const WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED: i32 = 2;
pub const WS_EXTENDED_PROTECTION_POLICY_ALWAYS: i32 = 3;
// WS_EXTENDED_PROTECTION_POLICY
const (
	WS_EXTENDED_PROTECTION_POLICY_NEVER int32 = 1
	WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED int32 = 2
	WS_EXTENDED_PROTECTION_POLICY_ALWAYS int32 = 3
)
const
  WS_EXTENDED_PROTECTION_POLICY_NEVER = 1;
  WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED = 2;
  WS_EXTENDED_PROTECTION_POLICY_ALWAYS = 3;
// WS_EXTENDED_PROTECTION_POLICY
pub const WS_EXTENDED_PROTECTION_POLICY_NEVER: i32 = 1;
pub const WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED: i32 = 2;
pub const WS_EXTENDED_PROTECTION_POLICY_ALWAYS: i32 = 3;
const
  WS_EXTENDED_PROTECTION_POLICY_NEVER* = 1
  WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED* = 2
  WS_EXTENDED_PROTECTION_POLICY_ALWAYS* = 3
enum WS_EXTENDED_PROTECTION_POLICY : int {
    WS_EXTENDED_PROTECTION_POLICY_NEVER = 1,
    WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED = 2,
    WS_EXTENDED_PROTECTION_POLICY_ALWAYS = 3,
}
#define global WS_EXTENDED_PROTECTION_POLICY_NEVER          0x1
#define global WS_EXTENDED_PROTECTION_POLICY_WHEN_SUPPORTED 0x2
#define global WS_EXTENDED_PROTECTION_POLICY_ALWAYS         0x3