
¿Cómo garantizar la seguridad de APIs?
La seguridad de las APIs está orientada a la protección de los sistemas informáticos de tu organización. Pero, ¿cómo se puede garantizar que por medio de ellas no serás objeto de una violación de los servicios de cómputo que ponga en riesgo la data sensible de tu empresa y tus clientes?
En primer lugar, conviene enumerar las posibles amenazas a la seguridad que pueden derivarse de la gestión de las aplicaciones programadas en el entorno de cómputo híbrido.
En un entorno de este tipo, las amenazas se pueden clasificar en dos categorías: internas y externas.
Las internas provienen de los propios usuarios de la plataforma que acceden a los datos sin restricciones y sin la autorización previa de la organización.
Esta situación supone una amenaza para la seguridad de la data, puesto que este usuario puede acceder a datos sensibles o modificar o borrar los datos de manera desautorizada.
Otra amenaza proviene de usuarios que, autorizados para acceder a determinados datos o servicios, pueden usar los recursos de la organización para fines personales o para divulgar datos a terceros.
Por ejemplo, si un usuario tiene autorización para acceder a los datos de los clientes de la organización y estos están en una nube pública, el empleado puede copiarlos enviarlos a terceros.
También están las ciberamenazas externas que viene de la nube pública o privada, de los usuarios remotos que pueden utilizar a los proveedores de servicios de infraestructura (ISPs), de los proveedores de servicios de aplicaciones (ISVs) u otras empresas con las que estés colaborando.
Es un tema con múltiples aristas y que demanda atención desde el mismo momento del desarrollo de la API, así que te invitamos a seguir leyendo para documentarte con mayor profundidad.
¿Qué es una API?
Una API (Application Programming Interface) es un conjunto de funciones que permiten aplicar instrucciones a una plataforma informática con el fin de recibir respuestas.
Por ejemplo, en el contexto de una plataforma de cómputo híbrido, la API de la nube pública permite a una aplicación de datos acceder a los servicios de dicha nube (fotos, videos, bases de datos, etc.).
También permiten que una aplicación de datos utilice el código de otra para compartir información entre ellas.
Seguridad de APIs de REST y de SOAP
Las APIs REST y SOAP son protocolos para realizar llamadas de servicio (service calls) a una aplicación de datos a través de una red.
No hay, por tanto, una diferencia fundamental entre las APIs REST y SOAP, ya que ambas tienen el mismo objetivo: proveer de un medio para comunicarse con una aplicación de datos.
Sin embargo, existen diferentes esquemas de seguridad para cada API, lo que puede provocar una serie de problemas de seguridad.
Seguridad de APIs SOAP
Las APIs SOAP se sirven de la infraestructura SOAP para realizar las llamadas de una aplicación de datos a otra a través de una red.
Si una aplicación de datos tiene una API SOAP, entonces un usuario con acceso puede realizar llamadas de servicio a través de la red.
El modelo de seguridad de SOAP es relativamente simple. Las llamadas SOAP requieren un poco más de ancho de banda y mantiene sus controles de seguridad en la comunicación, utilizando también un conjunto de validaciones para identificar posibles errores en la comunicación establecida.
Seguridad de APIs REST
Por su parte, las APIs REST se sirven de la infraestructura HTTP (Hypertext Transfer Protocol) para realizar las llamadas de una aplicación de datos a otra a través de una red.
El modelo de seguridad de REST es un poco más complejo que el de SOAP, es más abierto y maneja menos controles de seguridad en la comunicación, por lo que utiliza menos ancho de banda en las comunicaciones establecidas.
Buenas prácticas para incrementar la seguridad de APIs
A continuación te presentamos una lista de recomendaciones para aumentar la seguridad de las APIs:
- Los depuradores de API deben ser de alta prioridad. Si una API no se puede depurar, entonces no logra garantizar que esté protegida contra manipulación. Un depurador de API debe filtrar todas las llamadas de API y sus funciones en la aplicación.
- Todas las funciones de una aplicación de usuario en la que se invoca una función de API deben ser auditadas. Esto solo se puede lograr si el API está depurado.
- La seguridad de una aplicación tiene que estar garantizada independientemente de la seguridad de la API y depender de los datos que son transmitidos, y no de la clase de API en la que se basa.
- Es importante asegurarse de que la API no se puede manipular de forma invasiva.
- Abrir una API no significa que se deba abrir una aplicación de usuario. Las funciones de aplicación en la que se invoca una función de API deben estar protegidas contra acceso no autorizado.
- Es necesario asegurarse de que el usuario siempre se puede identificar. Cualquier API necesita una funcionalidad de autenticación.
- Las llamadas de API deberían tener una funcionalidad de control de errores. Si algo falla debería ser posible identificar el error y las consecuencias.
- El API tiene que ser utilizado por la aplicación de manera que lo haga invulnerable a cualquier tipo de amenaza. Es el API el que debe protegerse de la invasión de virus, del ataque de robots y de cualquier otro tipo de intrusión.
Riesgos de no considerar este proceso preventivo en tu empresa
En los últimos años, la amenaza de los ataques informáticos se ha incrementado y la protección de datos e infraestructura tecnológica es una prioridad. Estos ataques pueden generar perjuicios económicos directos e indirectos, a raíz de:
- Pérdida de confidencialidad de la información.
- Vulneración reiterada de bases de datos.
- Tiempo e inversión en la recuperación de la información.
- Daños a la imagen de marca.
- Pérdida de confianza.
- Pérdida de clientes, etc.
Por todo ello, la seguridad de las APIs debe convertirse en una línea de acción estratégica para cualquier empresa.
Si quieres leer más sobre ciberseguridad te invitamos a leer esta guía donde aprenderás todo lo que necesitas saber sobre este tema.