Language

SocketProtectionLevel 列挙型

定義

StreamSocket オブジェクトで使用する暗号化のレベルを指定します。

public enum class SocketProtectionLevel
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
enum class SocketProtectionLevel
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public enum SocketProtectionLevel
var value = Windows.Networking.Sockets.SocketProtectionLevel.plainSocket
Public Enum SocketProtectionLevel
継承
SocketProtectionLevel
属性

Windows の要件

要件 説明
デバイス ファミリ
Windows 10 (10.0.10240.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v1.0 で導入)
アプリの機能
bluetooth.rfcomm

フィールド

Name 値 説明
PlainSocket 0

暗号化のないプレーン ソケット。

Ssl 1

Note

この値は、Windows 8.1、Windows Server 2012 R2 以降では非推奨です。

暗号化に Secure Sockets Layer (SSL) を使用する必要がある TCP ソケット。 この値には暗号化が必要であり、NULL 暗号は許可されません (暗号化なし)。

この値は、SSL 3.0 および TLS 1.0 プロトコルと、システムにインストールされているすべての暗号化暗号 (NULL 暗号を除く) をサポートします。 ドメインに参加しているマシンの場合、管理者は暗号を許可する追加の制限を構成できます。

RC4 やその他の脆弱な暗号が許可されているため、この値は安全でないと見なされるため、非推奨としてマークされます。 ターゲット サーバーが RC4 またはその他の脆弱な暗号のみをサポートしない限り、ソケットでは代わりに Tls10、Tls11、または Tls12 を使用する必要があります。

SslAllowNullEncryption 2

暗号化に SSL を使用する TCP ソケット。 この値は、完全暗号化を使用することを優先しますが、サーバー構成に基づいて NULL 暗号 (暗号化なし) を許可します。

この値は、SSL 3.0 および TLS 1.0 プロトコルと、システムにインストールされているすべての暗号化暗号 (NULL 暗号を含む) をサポートします。 ドメインに参加しているマシンの場合、管理者は暗号を許可する追加の制限を構成できます。

NULL 暗号は暗号化を行わないので、この値は機密性を提供しませんが、整合性は保護されます。

BluetoothEncryptionAllowNullAuthentication 3

暗号化を使用することを優先するが、ターゲット サーバーの構成に基づいて NULL 暗号 (暗号化なし) を許可するBluetooth ソケット。

この値は、Windows 8.1、Windows Server 2012 R2 以降でサポートされています。

BluetoothEncryptionWithAuthentication 4

暗号化を使用する必要があるBluetooth ソケット。 この値には暗号化が必要であり、NULL 暗号は許可されません。

この値は、Windows 8.1、Windows Server 2012 R2 以降でサポートされています。

Ssl3AllowWeakEncryption 5

暗号化に SSL を使用する必要がある TCP ソケット。 この値は、SSL 3.0 プロトコルと、NULL 暗号を除くシステムにインストールされているすべての暗号化暗号をサポートします。 この値により、RC4 やその他の脆弱な暗号が安全でないと見なされます。 ドメインに参加しているマシンの場合、管理者は暗号を許可する追加の制限を構成できます。

この値は、Windows 8.1、Windows Server 2012 R2 以降でサポートされています。

Tls10 6

暗号化に SSL を使用する必要がある TCP ソケット。 この値は、TLS 1.0 プロトコルと、RC4、その他の弱い暗号、および NULL 暗号を除く、システムにインストールされているすべての暗号化暗号をサポートします。 ドメインに参加しているマシンの場合、管理者は暗号を許可する追加の制限を構成できます。

この値は、Windows 8.1、Windows Server 2012 R2 以降でサポートされています。

Tls11 7

暗号化に SSL を使用する必要がある TCP ソケット。 この値は、TLS 1.1 および TLS 1.0 プロトコル、および RC4、その他の脆弱な暗号、および NULL 暗号を除く、システムにインストールされているすべての暗号化暗号をサポートします。 ドメインに参加しているマシンの場合、管理者は暗号を許可する追加の制限を構成できます。

この値は、Windows 8.1、Windows Server 2012 R2 以降でサポートされています。

Tls12 8

暗号化に SSL を使用する必要がある TCP ソケット。 この値は、TLS 1.2、TLS 1.1、TLS 1.0 プロトコル、および RC4、その他の脆弱な暗号、および NULL 暗号を除くシステムにインストールされているすべての暗号化暗号をサポートします。 ドメインに参加しているマシンの場合、管理者は暗号を許可する追加の制限を構成できます。

この値は、Windows 8.1、Windows Server 2012 R2 以降でサポートされています。

Unspecified 9

保護レベルは指定されていません。

Tls13 10

注釈

SocketProtectionLevel 列挙を使用すると、 クライアントは StreamSocket オブジェクトを使用するときに、サーバーとのセキュリティ オプションのプロトコル ネゴシエーションを制御できます。

TCP ソケットの場合、さまざまな列挙値を使用すると、アプリ開発者は TLS 1.2、TLS 1.1、TLS 1.0、SSL 3.0 プロトコルの使用を制御し、安全でないと見なされる RC4 やその他の脆弱な暗号の使用を制限できます。 これにより、開発者は非常に幅広いサーバーセット間で互換性のあるアプリを構成できます。

BLUETOOTH RFCOMM ソケットの場合、さまざまな列挙値を使用すると、アプリ開発者はBluetooth暗号化の使用を制御できます。

ドメインに参加していないマシンのユーザーは、レジストリ設定を使用して暗号とプロトコルを無効にすることもできます。 詳細については、「 Schannel.dllで特定の暗号アルゴリズムとプロトコルの使用を制限する方法 」を参照してください。

SocketProtectionLevel 列挙により、 StreamSocketListener オブジェクトを使用してBluetooth経由でソケットをリッスンおよびバインドするときに、サーバーはクライアントとのセキュリティに関するプロトコル ネゴシエーションを制御することもできます。 StreamSocketListener オブジェクトがBluetoothで使用されている場合、サポートされている SocketProtectionLevel 値は PlainSocket、BluetoothEncryptionAllowNullAuthentication、または BluetoothEncryptionWithAuthentication です。 StreamSocketListener オブジェクトを使用して TCP ソケットをリッスンしてバインドする場合、サポートされている SocketProtectionLevel 値は PlainSocket のみです。

バージョン履歴

Windows のバージョン SDK のバージョン 付加価値
1709 16299 指定されていません。

適用対象

関連項目