SocketProtectionLevel Enumeración
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Especifica el nivel de cifrado que se va a usar en un objeto 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
- Herencia
-
SocketProtectionLevel
- Atributos
Requisitos de Windows
Familia de dispositivos |
Windows 10 (se introdujo en la versión 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (se introdujo en la versión v1.0)
|
Características de aplicaciones |
bluetooth.rfcomm
ID_CAP_NETWORKING [Windows Phone]
|
Campos
BluetoothEncryptionAllowNullAuthentication | 3 | Un socket Bluetooth que prefiera ese cifrado, pero permite un cifrado NULL (sin cifrado) basado en la configuración del servidor de destino. Este valor se admite en Windows 8.1, Windows Server 2012 R2 y versiones posteriores. |
BluetoothEncryptionWithAuthentication | 4 | Socket Bluetooth que debe usar el cifrado. Este valor requiere cifrado y nunca permite un cifrado NULL. Este valor se admite en Windows 8.1, Windows Server 2012 R2 y versiones posteriores. |
PlainSocket | 0 | Un socket sin formato sin cifrado. |
Ssl | 1 | Nota Este valor está en desuso en Windows 8.1, Windows Server 2012 R2 y versiones posteriores. Socket TCP que debe usar la capa de sockets seguros (SSL) para el cifrado. Este valor requiere cifrado y nunca permite un cifrado NULL (sin cifrado). Este valor admite los protocolos SSL 3.0 y TLS 1.0 y todos los cifrados de cifrado instalados en el sistema, excepto el cifrado NULL. En el caso de las máquinas unidas a un dominio, un administrador puede configurar restricciones adicionales en las que se permiten cifrados. Este valor está marcado como en desuso porque se considera inseguro, ya que se permiten RC4 y otros cifrados débiles. Los sockets deben usar Tls10, Tls11 o Tls12 en su lugar, a menos que el servidor de destino solo admita RC4 u otro cifrado débil. |
Ssl3AllowWeakEncryption | 5 | Socket TCP que debe usar SSL para el cifrado. Este valor admite el protocolo SSL 3.0 y todos los cifrados de cifrado instalados en el sistema, excepto el cifrado NULL. Este valor permite RC4 y otros cifrados débiles que se consideran inseguros. En el caso de las máquinas unidas a un dominio, un administrador puede configurar restricciones adicionales en las que se permiten cifrados. Este valor se admite en Windows 8.1, Windows Server 2012 R2 y versiones posteriores. |
SslAllowNullEncryption | 2 | Socket TCP que prefiere usar SSL para el cifrado. Este valor prefiere que se use el cifrado completo, pero permite un cifrado NULL (sin cifrado) basado en la configuración del servidor. Este valor admite los protocolos SSL 3.0 y TLS 1.0 y todos los cifrados de cifrado instalados en el sistema, incluido el cifrado NULL. En el caso de las máquinas unidas a un dominio, un administrador puede configurar restricciones adicionales en las que se permiten cifrados. El cifrado NULL no realiza ningún cifrado, por lo que este valor no proporciona confidencialidad, pero está protegido por la integridad. |
Tls10 | 6 | Socket TCP que debe usar SSL para el cifrado. Este valor admite el protocolo TLS 1.0 y todos los cifrados de cifrado instalados en el sistema excepto RC4, otros cifrados débiles y el cifrado NULL. En el caso de las máquinas unidas a un dominio, un administrador puede configurar restricciones adicionales en las que se permiten cifrados. Este valor se admite en Windows 8.1, Windows Server 2012 R2 y versiones posteriores. |
Tls11 | 7 | Socket TCP que debe usar SSL para el cifrado. Este valor admite los protocolos TLS 1.1 y TLS 1.0 y todos los cifrados de cifrado instalados en el sistema excepto RC4, otros cifrados débiles y el cifrado NULL. En el caso de las máquinas unidas a un dominio, un administrador puede configurar restricciones adicionales en las que se permiten cifrados. Este valor se admite en Windows 8.1, Windows Server 2012 R2 y versiones posteriores. |
Tls12 | 8 | Socket TCP que debe usar SSL para el cifrado. Este valor admite los protocolos TLS 1.2, TLS 1.1 y TLS 1.0 y todos los cifrados de cifrado instalados en el sistema excepto RC4, otros cifrados débiles y el cifrado NULL. En el caso de las máquinas unidas a un dominio, un administrador puede configurar restricciones adicionales en las que se permiten cifrados. Este valor se admite en Windows 8.1, Windows Server 2012 R2 y versiones posteriores. |
Tls13 | 10 | |
Unspecified | 9 | El nivel de protección no se especifica. |
Comentarios
La enumeración SocketProtectionLevel permite a los clientes controlar la negociación de protocolos para las opciones de seguridad con servidores cuando se usa el objeto StreamSocket .
En el caso de los sockets TCP, los distintos valores de enumeración permiten a los desarrolladores de aplicaciones controlar el uso de los protocolos TLS 1.2, TLS 1.1, TLS 1.0 y SSL 3.0 y restringir el uso de los protocolos RC4 y otros cifrados débiles que se consideran inseguros. Esto permite a los desarrolladores configurar aplicaciones compatibles en un conjunto muy amplio de servidores.
En el caso de los sockets RFCOMM de Bluetooth, los distintos valores de enumeración permiten a los desarrolladores de aplicaciones controlar el uso del cifrado bluetooth.
Los usuarios de máquinas no unidas a un dominio también pueden deshabilitar cifrados y protocolos mediante la configuración del Registro. Para obtener más información, vea Cómo restringir el uso de ciertos algoritmos criptográficos y protocolos en Schannel.dll.
La enumeración SocketProtectionLevel también permite a los servidores controlar la negociación de protocolos de seguridad con clientes cuando se usa el objeto StreamSocketListener para escuchar y enlazar a sockets a través de Bluetooth. Cuando se usa el objeto StreamSocketListener a través de Bluetooth, los valores de SocketProtectionLevel admitidos son PlainSocket, BluetoothEncryptionAllowNullAuthentication o BluetoothEncryptionWithAuthentication. Cuando se usa el objeto StreamSocketListener para escuchar y enlazar a sockets TCP, el único valor de SocketProtectionLevel admitido es PlainSocket.
Historial de versiones
Versión de Windows | Versión del SDK | Valor agregado |
---|---|---|
1709 | 16299 | Sin especificar |