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 | Не определено |