¿Qué es el descubrimiento de API?

Persona sentada en un escritorio, trabajando en una computadora

¿Qué es el descubrimiento de API?

El descubrimiento de API es el proceso de identificar y catalogar todas las APIs que utiliza una organización—tanto internas como de terceros—y documentar las funciones de API, los endpoints, las estructuras de datos y otra información relevante.

El descubrimiento de API crea un inventario de las interfaces de programación de aplicaciones (APIs) en uso, qué hacen, quién tiene permisos de acceso y mucho más. También puede ayudar a descubrir cualquier API oculta u olvidada—lo cual es importante para mitigar los riesgos de seguridad.

Las APIs son una parte vital del desarrollo de software moderno y proporcionan un intercambio bidireccional: permiten a los desarrolladores y aplicaciones solicitar datos, agregar servicios y capitalizar capacidades de otras aplicaciones, al tiempo que brindan a los propietarios de aplicaciones una forma de compartir, publicitar y comercializar sus productos. Esta funcionalidad esencial conlleva una mayor complejidad y vulnerabilidades.

API management es crucial para proteger estas vulnerabilidades y garantizar que un ecosistema de API funcione según lo previsto. Es importante saber exactamente cuántas, qué tipo y qué tan populares son las API, por el bien de la seguridad de API, la autenticación, la eficiencia, la protección de datos confidenciales y el mantenimiento de una visión general de cómo se utiliza una aplicación determinada. Pero, ¿cómo descubre el propietario de una aplicación toda esta información? Ahí es donde entra en juego el descubrimiento de API.

¿Por qué es importante el descubrimiento de API?

Las APIs o interfaces de programación de aplicaciones son conjuntos de reglas y protocolos que permiten que las aplicaciones y los servicios se comuniquen entre sí. Son esencialmente los intermediarios que permiten que las aplicaciones extraigan datos en tiempo real de todo tipo de fuentes diferentes. Las APIs proporcionan los datos meteorológicos en aplicaciones meteorológicas, pagos acelerados en aplicaciones de compras y mapas en el sitio web de un restaurante, entre muchos otros casos de uso. En la empresa, las APIs se utilizan para integrar flujos de trabajo y plataformas, conectar microservicios, facilitar el intercambio de activos, poner las aplicaciones a disposición de usuarios externos y mucho más.

Dada la gran cantidad de aplicaciones que utilizan las empresas modernas, con un promedio de más de mil según una encuesta de Salesforce, es importante que las organizaciones tengan una sólida práctica de descubrimiento de API. El descubrimiento de API se refiere al proceso de encontrar APIs documentadas y ocultas, crear directorios y compilar un inventario de APIs descubiertas. Hay muchas razones por las que el descubrimiento de API es tan importante, tanto por los beneficios que puede ofrecer como por los posibles impactos en la seguridad de las aplicaciones que puede tener descuidar este proceso. El descubrimiento de API es una parte vital del ensamblaje de una documentación de API exhaustiva y completa.

Evita la redundancia

La redundancia—la creación de múltiples instancias de las mismas características o similares que saturan la documentación, puede afectar gravemente los procesos de desarrollo al reducir la eficiencia y la productividad. En resumen, crear una nueva API que en realidad no es nueva puede desperdiciar tiempo y recursos. El descubrimiento de API adecuado y la documentación de API pueden reducir la posibilidad de redundancia de API. Si es fácil encontrar documentación para una rueda, no hay necesidad de reinventarla.

Acelera el desarrollo de aplicaciones y promueve la colaboración

Al utilizar herramientas de descubrimiento de API para descubrir API y producir documentación de API sólida, los desarrolladores pueden comprender mejor a qué aplicaciones y servicios existentes (tanto internos como externos) pueden acceder e integrar. Mediante el uso de servicios y funciones preexistentes, los desarrolladores pueden acelerar la producción, ampliar las capacidades de las aplicaciones y reducir el tiempo de comercialización.

El descubrimiento de API permite la creación de un inventario de API que ayuda a los desarrolladores a localizar y utilizar los servicios existentes. Esto tiene el beneficio adicional de alentar a los desarrolladores a integrar los datos y servicios de una aplicación al proporcionar un menú de opciones.

El descubrimiento de API y el mantenimiento constante de un catálogo de API permite a los equipos encontrar rápida y fácilmente las APIs que existen. Esto puede mejorar la eficiencia, reducir el trabajo innecesario e incluso mejorar el flujo de trabajo al alertar a los desarrolladores sobre capacidades de las que tal vez no se hayan dado cuenta.

Proteja los datos confidenciales

Mantener un catálogo de API actualizado es una excelente manera de monitorear quién tiene acceso a datos confidenciales, como información de usuario y claves de API. Al utilizar el descubrimiento de API para encontrar todas las APIs que acceden a datos confidenciales, el propietario de una aplicación puede monitorear más fácilmente quién tiene acceso a qué y asegurarse de que las APIs y las aplicaciones cumplan con todas las leyes y pautas aplicables. Esto es especialmente vital dada la prevalencia de las APIs en la sombra.

¿Qué hace el descubrimiento de API?

El descubrimiento de API implica descubrir muchos detalles diferentes sobre las APIs—el tipo de APIs, qué hacen, a qué datos tienen acceso y mucho más—que ayudan a los desarrolladores a identificar y comprender mejor las APIs que utiliza una organización. El descubrimiento de API produce información sobre las APIs, incluyendo:

Protocolo, arquitectura y formatos de datos compatibles: El proceso de descubrimiento ayuda a documentar qué protocolo o arquitectura utilizan las APIs (tal como REST, GraphQL, SOAP o RPC) y qué formatos de datos aceptan (como JSON, XML y YAML.)

Endpoints de API: Estos son la ubicación de un endpoint de datos o servicio, generalmente representado como una URL.

Autenticación: Las APIs suelen estar protegidas para que solo los clientes, proyectos y usuarios reconocidos puedan acceder a ellas. El descubrimiento de API ayuda a descubrir las especificaciones de autenticación.

Métodos y parámetros: El descubrimiento de API descubre acciones compatibles, tales como GET, PUT, DELETE y POST, y los parámetros que acepta la API.

¿Cómo afecta el descubrimiento de API a la seguridad de API?

El descubrimiento de API puede desempeñar un papel importante en el fortalecimiento de la seguridad de API. La documentación adecuada de la API y la API management brindan a los propietarios de la aplicación una visión completa del uso de la API, lo que puede facilitar el descubrimiento de vulnerabilidades de seguridad. A su vez, el propietario o desarrollador de una aplicación puede hacer arreglos a cualquier problema potencial.

Una de las formas más importantes en que el descubrimiento de API contribuye a la seguridad de API es mediante la localización de APIs ocultas.

¿Qué son las APIs ocultas?

El término "oculto" no es exactamente exacto, ya que una API oculta no es necesariamente malévola. En cambio, "API oculta" se refiere a las APIs que no están documentadas y no están incluidas en la documentación de API. Hay muchas APIs ocultas que son perfectamente inocuas, como características de desplazamiento infinito o muchas características de autocompletado en campos de texto de aplicaciones web.

Dicho esto, incluso las APIs ocultas e inocuas pueden causar posibles dolores de cabeza a los equipos de seguridad. Las APIs ocultas, al estar excluidas de las soluciones de seguridad, no estarán sujetas a la lista habitual de medidas regulatorias y de seguridad del propietario de la aplicación, como los cortafuegos. Hay muchos tipos diferentes de APIs ocultas, que van desde simplemente olvidadas hasta activamente dañinas, razón por la cual el proceso de descubrimiento de API es tan importante.

API en la sombra

Aunque no son necesariamente maliciosas, las APIs en la sombra se definen como APIs que no están gestionadas ni protegidas por la entidad que las utiliza. Sin visibilidad de las APIs, estas existen fuera del alcance de la seguridad de una empresa y son vulnerables a los ataques.

Un informe de 2022 encontró que alrededor del 31% de las transacciones maliciosas se dirigieron a las APIs en la sombra, lo que las convierte en un riesgo de seguridad notable. Los ataques de APIs dirigidos a las APIs en la sombra tienen el potencial de poner en riesgo datos confidenciales, como la información del usuario o el conocimiento patentado, lo que hace que la ciberseguridad sea una gran razón para utilizar buenas técnicas de descubrimiento de API. Los equipos de seguridad tampoco pueden proporcionar parches de seguridad a las APIs que desconocen, lo que significa que las APIs en la sombra pueden tener vulnerabilidades desconocidas para todos, excepto para los hackers inteligentes. Estos pueden ampliar la superficie de ataque o rutas disponibles para los malos actores.

Las APIs en la sombra surgen de todo tipo de errores y descuidos en la política de seguridad. Es posible que algunos desarrolladores simplemente se olviden, o no se preocupen lo suficiente, de utilizar la documentación de API adecuada. A veces, las APIs más antiguas se eliminan de la documentación aunque todavía existen. Las fusiones de empresas también son conocidas por producir muchas APIs en la sombra. A veces, los desarrolladores crean APIs en la sombra con fines de prueba o para casos de uso personalizados muy pequeños y no se molestan en alertar a los equipos de seguridad de su presencia.

API zombie y API no autorizadas

Un tipo ligeramente diferente de API oculta es la API zombie, que es una API que se ha olvidado pero no borrado. Es posible que las APIs zombie se hayan protegido y mantenido adecuadamente en algún momento, pero desde entonces se han dejado languidecer, tal vez desconocidas incluso para el propietario de la aplicación que las creó. Las APIs zombie normalmente no se actualizan ni se aplican parches, pero siguen proporcionando una puerta algo oculta a alguna parte del sistema de la aplicación.

La terminología de las APIs no autorizadas puede variar de una organización a otra; algunos usan "API en la sombra" y "API no autorizada" indistintamente, mientras que otros usan "API no autorizada" para referirse a APIs que son deliberadamente maliciosas.

Cómo mejorar el descubrimiento de API

Las prácticas exitosas de descubrimiento de API son coherentes, están bien documentadas y estandarizadas. Seguir estos principios puede ayudar a los desarrolladores—internos y externos, hoy y en el futuro—a hacer un uso eficiente y seguro de las APIs.

Estandarización: El uso de especificaciones y protocolos estándar, como OpenAPI Specification (OAS), REST y GraphQL, puede mejorar el descubrimiento de API y la compatibilidad de API, y ayudar a los consumidores a comprender rápidamente las APIs.

Documentación: Las APIs con documentación sólida y estandarizada son más fáciles de descubrir, lo que puede dar beneficios en la integración, la colaboración y la gestión. Cuanto mejor sea la documentación, más APIs se pueden usar y mejorar.

Coherencia: Es importante realizar regularmente el descubrimiento de API, ya que las APIs se agregan, actualizan y retiran continuamente; esta no es una tarea de una sola vez. Los sistemas automatizados pueden facilitar esto, pero el descubrimiento manual regular también es efectivo.

Descubrimiento de API manual vs. automatizado

Existen muchas herramientas diferentes de descubrimiento de API, que van desde herramientas manuales de descubrimiento de API hasta herramientas que dependen de la automatización completa. Hay fortalezas y debilidades en cada uno.

Descubrimiento de API manual

Muchos desarrolladores se han involucrado en alguna forma de descubrimiento manual de API. Esto puede implicar examinar detenidamente los códigos fuente o monitorear el tráfico de API en tiempo real en busca de anomalías. Estos métodos manuales pueden, si un equipo de seguridad sabe exactamente lo que está buscando, ser más rápidos y directos que los métodos automatizados. Pero, en general, el descubrimiento manual de API es más lento, menos eficiente, tiende a pasar por alto las APIs ocultas más sutiles y puede requerir conocimientos más avanzados.

Descubrimiento de API automático

Existen muchas herramientas especializadas y automatizadas de descubrimiento de API. Una API Gateway, por ejemplo, es un "intermediario" centralizado que recibe y dirige las llamadas a la API. Las puertas de enlace ayudan a catalogar y monitorear las APIs y, por lo general, hacen gran parte del aumento del descubrimiento de API como parte de su trabajo.

Existen otros servicios especializados de protección de API que proporcionan detección automática de API. Al buscar un servicio de este tipo, es común buscar un proveedor que ofrezca una postura de seguridad sólida, cumplimiento de estándares conocidos (como la especificación OpenAPI, que evita ser víctima de los 10 principales riesgos de seguridad de APIs de OWASP) y fácil integración con la plataforma de una organización.

La automatización puede hacer que la mejora del ciclo de vida de una API sea mucho más eficiente y garantizar que solo las APIs seguras tengan acceso a las aplicaciones de software y los recursos asociados.

Soluciones relacionadas
IBM webMethods Hybrid Integration

Habilite una integración dinámica y escalable que se adapte a las necesidades empresariales en evolución. Automatización impulsada por IA y API

Descubra IBM webMethods Hybrid Integration
Software y soluciones de IBM Integration

Desbloquee el potencial de negocio con las soluciones de integración de IBM, que conectan aplicaciones y sistemas para acceder a datos críticos de forma rápida y segura.

Explorar las soluciones de integración de IBM
Servicios de consultoría en la nube

Aproveche la nube híbrida a su máximo valor en la era de la IA agéntica

Explore los servicios de consultoría en la nube
Dé el siguiente paso

Habilite una integración dinámica y escalable que se adapte a las necesidades empresariales en evolución. Automatización impulsada por IA y API.

Descubra IBM webMethods Hybrid Integration Obtenga insights de la industria