OK Probablemente estoy yendo demasiado lejos en las malas hierbas con mi configuración WCF y no puedo ver el bosque a través de los árboles, así que quiero un punto de control en seguridad.¿Se necesita SSL para WCF al usar Transport Security?
Tengo (2) enlaces expuestos en un servicio WCF para opciones del lado del cliente que consumen: netTcpBinding y wsHttpBinding (tanto fino como funcional). He configurado ambos con el valor predeterminado: clientCredentialType = "Windows". Tengo el wsHttpBinding configurado para usar un certificado SSL y exponer el punto final a través de https (lo quiero), y también tengo un certificado SSL configurado para que netTcpBinding use SSL sobre TCP (también quiero esto).
Aquí es donde sigo obteniendo información mixta. Aparentemente, la seguridad de "Transporte" es inherentemente segura. ¿Significa esto que hago no necesito un certificado SSL, entonces si quiero asegurar la capa de Transporte?
¡Buen resumen! Para que quede claro, la "protección de mensajes" para esta configuración significa que se establece un canal encriptado (el transporte) a través del cual el mensaje se transmite al servicio. El mensaje en sí no está ** encriptado ** y no necesita ser porque el canal es seguro. WCF también tiene seguridad de nivel de mensaje (que ** no ** está habilitada en esta configuración) que encripta el mensaje en sí mismo para que pueda transmitirse a través de canales no seguros o pasar a través de intermediarios comprometiendo el contenido del mensaje. –
¡Gracias! Información del WCFSecurityGuid (p.127) para obtener más información sobre los modos de seguridad y su descripción: ** Ninguno **: no se proporciona seguridad; no deberías usar esta opción ** Transporte **: la autenticación mutua y la protección de mensajes se proporcionan en el nivel de transporte. ** Mensaje **: la autenticación mutua y la protección de mensajes se proporcionan a nivel de mensaje. ** Ambos **: la autenticación mutua y la protección de mensajes se proporcionan tanto a nivel de transporte como a nivel de mensaje. Esto es mucho más de lo que se necesita para la mayoría de los escenarios. – atconway
cont ... ** TransportWithMessageCredential **: la autenticación del cliente se proporciona en el nivel del mensaje, y la protección del mensaje y la autenticación del servicio se proporcionan en el nivel de transporte. ** TransportCredentialOnly **: la autenticación mutua se proporciona en el nivel de transporte, pero no se proporciona protección de mensajes. – atconway