Cómo hacer WCF Sesiones más seguro?
-
13-09-2019 - |
Pregunta
supongamos que tenemos un servicio WCF como el que a partir de ejemplos de MSDN -. C #, calculatorservice, con todos los ajustes por defecto en
Si yo fuera un hacker y yo sabía que era calculatorservice algo importante, que quiero hacer que deje de trabajar, yo podría simplemente modificar el código de referencias de servicios y crea una aplicación de mi propia que crea 10 clientes. éstos tengan a bien llamar a un método aleatorio (sin terminación) en calculatorservice de vez en entonces, para mantener la sesión activa, y nunca se cierran.
Ahora, obviamente, ya que se toman todas las 10 sesiones (o cualquiera que sea el número de sesiones es el máximo), nadie puede acceder a la calculatorservice, que está completamente bloqueado!
¿Cómo podemos proteger a nuestros servicios de eso?
Solución
Si tienes miedo de que un hacker malicioso obstruirá su servicio con sesiones falsos, entonces no use sesiones! Utilizar el enfoque "por llamada", y autenticar a los usuarios, por ejemplo asegurarse de que estén bien en su dominio de Windows / AD, o tienen conocimiento de un nombre de usuario / contraseña para realizar llamadas a su servicio.
En caso de que un hacker malicioso obtener una combinación de nombre de usuario / contraseña válidos para su servicio, entonces usted no puede hacer mucho para detenerlo de forma constante y que el envío de 10 o 20 solicitudes simultáneas y obstruyendo su servicio - al menos no en el nivel de servicio WCF. WCF proporciona aplicación de estrangulamiento comportamientos para prevenir 1'000s de llamadas concurrentes malintencionados con el fin de proteger su servidor se inunde y se estrelló.
Si necesita mantener lejos específica o IP de rangos de IP, tendrá que acercarse a principios de - en sus routers / cortafuegos -. El servicio WCF no puede realmente ayudar allí
Otros consejos
Lo mejor que puede hacer sería garantizar su servicio WCF :
En este artículo voy a mostrar cómo se puede implementar la seguridad en un WCF Servicio. Hay muchas opciones y puntos de extensibilidad para la implementación seguridad en WCF. También puedes usar productos específicos, como el de Windows 2003 Server Administrador de autorización, junto con WCF para poner en práctica el los requisitos de autorización de una solución. Fuera de la caja, soportes WCF credenciales de Windows, nombre de usuario Fichas y certificados X.509 como digitales credenciales de seguridad.