Язык

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

Поля

Имя. Значение Описание
PlainSocket 0

Обычный сокет без шифрования.

Ssl 1

Примечание.

Это значение устарело для Windows 8.1, Windows Server 2012 R2 и более поздних версий.

Сокет TCP, который должен использовать протокол SSL для шифрования. Это значение требует шифрования и никогда не разрешает шифр NULL (без шифрования).

Это значение поддерживает протоколы SSL 3.0 и TLS 1.0 и все шифры шифрования, установленные в системе, за исключением шифра NULL. Для компьютеров, присоединенных к домену, администратор может настроить дополнительные ограничения, на которые разрешены шифры.

Это значение помечается как нерекомендуемое, так как оно считается небезопасным, так как rc4 и другие слабые шифры разрешены. Сокеты должны использовать Tls10, Tls11 или Tls12 , если целевой сервер не поддерживает только RC4 или другой слабый шифр.

SslAllowNullEncryption 2

Сокет TCP, который предпочитает использовать SSL для шифрования. Это значение предпочитает использовать полное шифрование, но разрешает шифр NULL (без шифрования) на основе конфигурации сервера.

Это значение поддерживает протоколы SSL 3.0 и TLS 1.0 и все шифры шифрования, установленные в системе, включая шифр NULL. Для компьютеров, присоединенных к домену, администратор может настроить дополнительные ограничения, на которые разрешены шифры.

Шифр NULL не шифрует шифрование, поэтому это значение не обеспечивает конфиденциальность, но защищает целостность.

BluetoothEncryptionAllowNullAuthentication 3

Сокет Bluetooth, который предпочитает использовать шифрование, но разрешает шифр NULL (без шифрования) на основе конфигурации целевого сервера.

Это значение поддерживается в Windows 8.1, Windows Server 2012 R2 и более поздних версиях.

BluetoothEncryptionWithAuthentication 4

Сокет Bluetooth, который должен использовать шифрование. Это значение требует шифрования и никогда не разрешает шифр NULL.

Это значение поддерживается в Windows 8.1, Windows Server 2012 R2 и более поздних версиях.

Ssl3AllowWeakEncryption 5

Сокет TCP, который должен использовать SSL для шифрования. Это значение поддерживает протокол SSL 3.0 и все шифры шифрования, установленные в системе, за исключением шифра NULL. Это значение позволяет использовать rc4 и другие слабые шифры, которые считаются небезопасными. Для компьютеров, присоединенных к домену, администратор может настроить дополнительные ограничения, на которые разрешены шифры.

Это значение поддерживается в Windows 8.1, Windows Server 2012 R2 и более поздних версиях.

Tls10 6

Сокет TCP, который должен использовать SSL для шифрования. Это значение поддерживает протокол TLS 1.0 и все шифры шифрования, установленные в системе, кроме RC4, других слабых шифров и шифров NULL. Для компьютеров, присоединенных к домену, администратор может настроить дополнительные ограничения, на которые разрешены шифры.

Это значение поддерживается в Windows 8.1, Windows Server 2012 R2 и более поздних версиях.

Tls11 7

Сокет TCP, который должен использовать SSL для шифрования. Это значение поддерживает протоколы TLS 1.1 и TLS 1.0 и все шифры шифрования, установленные в системе, кроме RC4, других слабых шифров и шифров NULL. Для компьютеров, присоединенных к домену, администратор может настроить дополнительные ограничения, на которые разрешены шифры.

Это значение поддерживается в Windows 8.1, Windows Server 2012 R2 и более поздних версиях.

Tls12 8

Сокет TCP, который должен использовать SSL для шифрования. Это значение поддерживает протоколы 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 Не определено

Применяется к

См. также