Discusión sobre la seguridad de los servicios web XML. En principio no son seguros, pero podemos hacer cosas para evitar accesos no permitidos.
Teniendo en cuenta todos los aspectos de seguridad, autenticación y autorización, confidencialidad e integridad de datos, etc., y el hecho de que la especificación SOAP ni siquiera menciona la seguridad, es fácil llegar a la conclusión de que la respuesta es negativa. Pero no hay que subestimar los servicios Web XML de Microsoft®. Hoy en día, se pueden tomar muchas medidas para crear servicios Web XML seguros.
A la hora de tratar la seguridad en servicios Web XML, es necesario considerar los siguientes puntos:
Vamos a empezar repasando y entendiendo el funcionamiento de cada una de las opciones disponibles actualmente para crear una infraestructura segura.
Creación de una infraestructura segura una infraestructura segura es la clave para contar con servicios Web XML seguros. Microsoft ofrece una amplia gama de tecnologías que, una vez integradas en un plan general de seguridad, permiten a las empresas proteger eficazmente una infraestructura informática. Para completar la implementación con éxito, la planeación debe considerar lo siguiente:
Uno de los métodos más sencillos para aumentar la seguridad de los servicios Web XML consiste en asegurarse de que la conexión entre el cliente de servicios Web XML y el servidor es segura. Esto se puede llevar a cabo mediante varias técnicas, dependiendo de la extensión de la red y el perfil de actividades de las interacciones. Tres de las técnicas más comunes y accesibles son: reglas basadas en un servidor de seguridad, SSL (Secure Sockets Layer) y redes privadas virtuales (VPN.
Si sabe con exactitud qué equipos van a tener acceso a los servicios Web XML, puede utilizar reglas de servidor de seguridad para restringir el acceso a equipos con direcciones IP conocidas. Esta técnica resulta particularmente útil si desea restringir el acceso a equipos en una red privada virtual (por ejemplo, una red LAN/WAN corporativa) y no desea mantener el contenido de los mensajes en secreto (cifrados. Los servidores de seguridad, como Microsoft Internet Security and Acceleration (ISA) Server, pueden ofrecer reglas avanzadas basadas en directivas que proporcionen distintas restricciones para clientes diferentes según su origen o identidad. Esto resulta de gran utilidad cuando se espera que determinados clientes tengan acceso a funcionalidades (métodos) diferentes de los mismos servicios Web XML.
Se puede utilizar SSL para establecer conexiones seguras en redes que no son de confianza (como Internet. SSL cifra y descifra mensajes enviados entre el cliente y el servidor. Al cifrar los datos, se evita que los mensajes sean leídos por terceros durante la transmisión. SSL cifra el mensaje del cliente y, a continuación, lo envía al servidor. Una vez que el servidor lo recibe, SSL lo descifra y comprueba que procede del remitente correcto (proceso que se denomina autenticación. El servidor, o el servidor y el cliente, pueden tener certificados que se utilizan como parte del proceso de autenticación y que proporcionan capacidades de autenticación además del cifrado de la conexión. Aunque es un método muy eficaz para crear comunicaciones seguras, SSL presenta un coste en rendimiento que debe tenerse en cuenta. Los servicios Web XML de Microsoft admiten SSL integrado, tanto en clientes como en servidores.
Una red privada virtual es la extensión de una red privada que se conecta a través de redes compartidas o públicas, como Internet. Las redes virtuales privadas permiten enviar datos entre dos equipos en una conexión segura. Si bien su funcionamiento es similar a SSL, una red virtual segura es una conexión punto a punto establecida a largo plazo. De este modo, mejora la eficacia y permite la comunicación con servicios Web XML, pero requiere que se establezca una conexión duradera a largo plazo para obtener un rendimiento mayor.
A la hora de tratar la seguridad en servicios Web XML, es necesario considerar los siguientes puntos:
- ¿Cuál es nuestro objetivo? Limitar el acceso a servicios Web XML a usuarios autorizados, evitar que los mensajes puedan ser visualizados por personas no autorizadas, etc.
- ¿Cómo vamos a cumplir con el objetivo deseado? Red, capa de transporte, sistema operativo, servicio o aplicación.
- ¿Qué nivel de interoperabilidad deseamos y necesitamos en nuestra solución? Local o global.
- ¿Cómo se puede aumentar la seguridad de los servicios Web XML actuales?
- Crear conexiones seguras
- Autenticar y autorizar la interacción
Vamos a empezar repasando y entendiendo el funcionamiento de cada una de las opciones disponibles actualmente para crear una infraestructura segura.
Creación de una infraestructura segura una infraestructura segura es la clave para contar con servicios Web XML seguros. Microsoft ofrece una amplia gama de tecnologías que, una vez integradas en un plan general de seguridad, permiten a las empresas proteger eficazmente una infraestructura informática. Para completar la implementación con éxito, la planeación debe considerar lo siguiente:
- Tener una idea detallada de los riesgos potenciales del entorno (como virus, intrusos y desastres naturales.
- Realizar un análisis activo de la relación entre las consecuencias y contramedidas de una intrusión y los riesgos.
- Crear una estrategia de implementación planeada con detenimiento para integrar las medidas de seguridad en el conjunto de una red empresarial, basándose en los dos puntos anteriores.
Uno de los métodos más sencillos para aumentar la seguridad de los servicios Web XML consiste en asegurarse de que la conexión entre el cliente de servicios Web XML y el servidor es segura. Esto se puede llevar a cabo mediante varias técnicas, dependiendo de la extensión de la red y el perfil de actividades de las interacciones. Tres de las técnicas más comunes y accesibles son: reglas basadas en un servidor de seguridad, SSL (Secure Sockets Layer) y redes privadas virtuales (VPN.
Si sabe con exactitud qué equipos van a tener acceso a los servicios Web XML, puede utilizar reglas de servidor de seguridad para restringir el acceso a equipos con direcciones IP conocidas. Esta técnica resulta particularmente útil si desea restringir el acceso a equipos en una red privada virtual (por ejemplo, una red LAN/WAN corporativa) y no desea mantener el contenido de los mensajes en secreto (cifrados. Los servidores de seguridad, como Microsoft Internet Security and Acceleration (ISA) Server, pueden ofrecer reglas avanzadas basadas en directivas que proporcionen distintas restricciones para clientes diferentes según su origen o identidad. Esto resulta de gran utilidad cuando se espera que determinados clientes tengan acceso a funcionalidades (métodos) diferentes de los mismos servicios Web XML.
Se puede utilizar SSL para establecer conexiones seguras en redes que no son de confianza (como Internet. SSL cifra y descifra mensajes enviados entre el cliente y el servidor. Al cifrar los datos, se evita que los mensajes sean leídos por terceros durante la transmisión. SSL cifra el mensaje del cliente y, a continuación, lo envía al servidor. Una vez que el servidor lo recibe, SSL lo descifra y comprueba que procede del remitente correcto (proceso que se denomina autenticación. El servidor, o el servidor y el cliente, pueden tener certificados que se utilizan como parte del proceso de autenticación y que proporcionan capacidades de autenticación además del cifrado de la conexión. Aunque es un método muy eficaz para crear comunicaciones seguras, SSL presenta un coste en rendimiento que debe tenerse en cuenta. Los servicios Web XML de Microsoft admiten SSL integrado, tanto en clientes como en servidores.
Una red privada virtual es la extensión de una red privada que se conecta a través de redes compartidas o públicas, como Internet. Las redes virtuales privadas permiten enviar datos entre dos equipos en una conexión segura. Si bien su funcionamiento es similar a SSL, una red virtual segura es una conexión punto a punto establecida a largo plazo. De este modo, mejora la eficacia y permite la comunicación con servicios Web XML, pero requiere que se establezca una conexión duradera a largo plazo para obtener un rendimiento mayor.
Benjamín González C.
Ingeniero de Sistemas