O que é descoberta de APIs?

Pessoa sentada à mesa, trabalhando em um computador

O que é descoberta de APIs?

A descoberta de APIs é o processo de identificar e catalogar todas as APIs que uma organização usa (tanto internas quanto de terceiros) e documentar funções de APIs, endpoints, estruturas de dados e outras informações relevantes.

A descoberta de APIs cria um inventário das interfaces de programação de aplicativos (APIs) em uso, o que elas fazem, quem tem permissões de acesso e muito mais. Ela também pode ajudar a descobrir APIs ocultas ou esquecidas — importantes para mitigar riscos de segurança.

As APIs são uma parte vital do desenvolvimento de software moderno e fornecem uma troca bidirecional: permitem que desenvolvedores e aplicativos solicitem dados, adicionem serviços e capitalizem recursos de outros aplicativos, ao mesmo tempo em que dão aos proprietários da aplicação uma maneira de Compartilhe, publicize e comercializar seus produtos. Com essa funcionalidade essencial, surgem complexidade e vulnerabilidades adicionais.

O API management é crucial para proteger essas vulnerabilidades e garantir que um ecossistema de API opere conforme o esperado. É importante saber exatamente quantos, quais tipos e o quanto as APIs são populares, para a segurança de APIs, autenticação, eficiência, proteção de dados confidenciais e para manter uma visão geral de como uma determinada aplicação está sendo usada. Mas como o proprietário de uma aplicação descobre todas essas informações? É aí que entra a descoberta de APIs.

Por que a descoberta de APIs é importante?

APIs, ou interfaces de programação de aplicativos, são conjuntos de regras e protocolos que permitem que aplicações e serviços se comuniquem entre si. Elas são essencialmente os intermediários que permitem que as aplicações extraiam dados em tempo real de todos os tipos de fontes diferentes. As APIs fornecem os dados meteorológicos em aplicativos meteorológicos, checkouts acelerados em aplicativos de compras e mapas no site de um restaurante, entre muitos outros casos de uso. Na empresa, as APIs são usadas para integrar fluxos de trabalho e plataformas, conectar microsserviços, facilitar o compartilhamento de ativos, disponibilizar aplicações para usuários de terceiros e muito mais.

Dado o grande número de aplicações que as organizações modernas usam, com uma média de mais de mil de acordo com uma pesquisa da Salesforce, é importante que as organizações tenham uma sólida prática de descoberta de API. A descoberta de APIs refere-se ao processo de encontrar APIs documentadas e ocultas, criação de diretórios e compilação de um inventário de APIs descobertas. Há muitas razões pelas quais a descoberta de APIs é tão importante, tanto pelos benefícios que ela pode oferecer quanto pelos possíveis impactos na segurança de aplicações que negligenciar esse processo pode ter. A descoberta de APIs é uma parte vital da montagem de documentação detalhada e completa de APIs.

Evite redundância

A redundância (a criação de múltiplas instâncias da mesma ou de funcionalidades semelhantes que desordenam a documentação) pode afetar gravemente os processos de desenvolvimento, reduzindo a eficiência e a produtividade. Em resumo, criar uma nova API que não é realmente nova pode desperdiçar tempo e recursos. A descoberta e a documentação adequadas de APIs podem reduzir a chance de redundância de APIs. Se é fácil encontrar documentação para uma roda, não há necessidade de reinventá-la.

Acelere o desenvolvimento de aplicações e promova a colaboração

Ao usar ferramentas de descoberta de APIs para descobrir APIs e produzir documentação sólida de APIs, os desenvolvedores podem entender melhor quais aplicações e serviços existentes (internos e externos) eles podem acessar e integrar. Usando serviços e funções preexistentes, os desenvolvedores podem acelerar a produção, expandir os recursos das aplicações e reduzir o tempo de lançamento no mercado.

A descoberta de APIs permite a criação de um inventário de APIs que ajuda os desenvolvedores a localizar e usar os serviços existentes. Isso tem o benefício adicional de incentivar os desenvolvedores a integrar os dados e serviços de uma aplicação, fornecendo um menu de opções.

A descoberta de APIs e a manutenção consistente de um catálogo de APIs permitem que as equipes encontrem de forma rápida e fácil as APIs existentes. Isso pode melhorar a eficiência, reduzir trabalho desnecessário e até mesmo melhorar o fluxo de trabalho, alertando os desenvolvedores para recursos que eles podem não ter percebido.

Proteger dados sigilosos

Manter um catálogo de API atualizado é uma ótima maneira de monitorar quem tem acesso a dados confidenciais, como informações do usuário e chaves de APIs. Ao usar a descoberta de APIs para encontrar todas as APIs que acessam dados confidenciais, o proprietário de uma aplicação pode monitorar com mais facilidade quem tem acesso ao quê e garantir que as APIs e aplicações cumpram todas as leis e diretrizes aplicáveis. Isso é especialmente vital dada a prevalência de APIs invisíveis.

O que a descoberta de APIs faz?

A descoberta de APIs envolve a descoberta de muitos detalhes diferentes sobre APIs, o tipo de APIs, o que elas fazem, a quais dados elas têm acesso e muito mais, que ajudam os desenvolvedores a identificar e entender melhor as APIs que uma organização usa. A descoberta de APIs produz informações sobre APIs, incluindo:

Protocolo, arquitetura e formatos de dados compatíveis: o processo de descoberta ajuda a documentar qual protocolo ou arquitetura as APIs usam (como REST, GraphQL, SOAP ou RPC) e quais formatos de dados elas aceitam (como JSON, XML e YAML).

Endpoints de APIs: são as localizações de um armazenar específico de dados ou serviço, geralmente representados como uma URL.

Autenticação: as APIs geralmente são protegidas de modo que apenas clientes, projetos e usuários reconhecidos possam acessá-las. A descoberta de APIs ajuda a descobrir as especificações de autenticação.

Métodos e parâmetros: a descoberta de APIs revela ações compatíveis, como GET, PUT, DELETE e POST, e os parâmetros que a API aceita.

Como a descoberta de APIs afeta a segurança de APIs?

A descoberta de APIs pode desempenhar um papel importante no fortalecimento da segurança de APIs. A documentação adequada de APIs e o API management oferecem aos proprietários de aplicação uma visão abrangente do uso de APIs, o que pode facilitar a descoberta de vulnerabilidades de segurança. Por sua vez, o proprietário ou desenvolvedor de uma aplicação pode corrigir qualquer problema potencial.

Uma das maneiras mais importantes pelas quais a descoberta de API contribui para a segurança de APIs é localizando APIs ocultas.

O que são APIs ocultas?

O termo "oculto" não é exatamente preciso, pois uma API oculta não é necessariamente malévola. Em vez disso, "API oculta" se refere a APIs que não estão documentadas e não estão incluídas na documentação da API. Há muitas APIs ocultas que são perfeitamente inócuas, como funcionalidades de rolagem infinita ou muitas funcionalidades de preenchimento automático em campos de texto de aplicação da web.

Dito isso, até mesmo APIs ocultas inócuas podem fornecer possíveis dores de cabeça para as equipes de segurança. As APIs ocultas, sendo excluídas das soluções de segurança, não estarão sujeitas ao conjunto usual de medidas regulatórias e de segurança do proprietário da aplicação, como firewalls. Há muitos tipos diferentes de APIs ocultas, que vão desde simplesmente esquecidas até ativamente prejudiciais, e é por isso que o processo de descoberta de APIs é tão importante.

APIs invisíveis

Embora não sejam necessariamente maliciosas, as APIs invisíveis são definidas como APIs que não são gerenciadas nem protegidas pela entidade que as utiliza. Sem visibilidade de API, elas existem fora do escopo de segurança de uma empresa e são vulneráveis a ataques.

Um relatório de 2022 descobriu que cerca de 31% das transações maliciosas visavam APIs invisíveis, tornando-as um risco de segurança notável. Ataques de API direcionados a APIs invisíveis têm o potencial de colocar dados sensíveis, como informações do usuário ou conhecimento proprietário em risco, tornando a cibersegurança uma grande razão para usar boas técnicas de descoberta de APIs. As equipes de segurança também não são capazes de fornecer patches de segurança para APIs que não conhecem, o que significa que as APIs invisíveis podem ter vulnerabilidades desconhecidas por todos, exceto hackers inteligentes. Estas podem expandir a superfície de ataque ou os caminhos disponíveis para atores mal-intencionados.

As APIs invisíveis surgem de todos os tipos de erros, enganos e descuido na política de segurança. Alguns desenvolvedores podem simplesmente esquecer, ou não se preocupar o suficiente, de usar a documentação adequada da API. Às vezes, APIs mais antigas são removidas da documentação, embora ainda existam. As fusões de empresas também são notórias por produzir muitas APIs invisíveis. Às vezes, os desenvolvedores criam APIs invisíveis para fins de teste ou para casos de uso personalizados muito pequenos e não se preocupam em alertar as equipes de segurança sobre sua presença.

APIs zumbis e APIs fraudulentas

Um tipo ligeiramente diferente de API oculta é a API zumbi, que é uma API que foi esquecida, mas não apagada. As APIs zumbis podem ter sido devidamente protegidas e mantidas em algum momento, mas desde então foram deixadas de lado, talvez desconhecidas até mesmo para o proprietário da aplicação que as criou. As APIs zumbis normalmente não são atualizadas ou corrigidas, mas ainda fornecem uma porta um tanto oculta para alguma parte do sistema da aplicação.

A terminologia para APIs não autorizadas pode variar de organização para organização; alguns usam “API invisível” e “API fraudulenta” de forma intercambiável, enquanto outros usam “API fraudulenta” para se referir a APIs que são deliberadamente maliciosas.

Como melhorar a descoberta de APIs

As práticas bem-sucedidas de descoberta de APIs são consistentes, bem documentadas e padronizadas. Seguir esses princípios pode ajudar os desenvolvedores, internos e externos, hoje e no futuro, a fazer uso eficiente e seguro das APIs.

Padronização: o uso de especificações e protocolos padrão, como OpenAPI Specification (OAS), REST e GraphQL, pode melhorar a descoberta e a compatibilidade de APIs e ajudar os consumidores a entender rapidamente as APIs.

Documentação: APIs com documentação forte e padronizada são mais facilmente descobertas, o que pode pagar dividendos em integração, colaboração e gerenciamento. Quanto melhor a documentação, mais APIs poderão ser usadas e aprimoradas.

Consistência: realizar a descoberta de APIs regularmente é importante, pois as APIs são continuamente adicionadas, atualizadas e desativadas; essa não é uma tarefa única. Sistemas automatizados podem facilitar isso, mas a descoberta manual regular também é eficaz.

Descoberta de APIs manual versus automatizada

Há muitas ferramentas diferentes de descoberta de API, desde ferramentas manuais de descoberta de API até ferramentas que dependem de automação completa. Existem pontos fortes e fracos em cada uma.

Descoberta de APIs manual

Muitos desenvolvedores se envolveram em alguma forma de descoberta manual de APIs. Isso pode envolver a análise de códigos-fonte ou o monitoramento do tráfego de APIs em tempo real em busca de anomalias. Esses métodos manuais podem, se a equipe de segurança souber exatamente o que está procurando, ser mais rápidos e diretos do que os métodos automatizados. Mas, em geral, a descoberta manual de APIs é mais lenta, menos eficiente, propensa a perder APIs ocultas mais sutis e pode exigir um conhecimento mais avançado.

Descoberta de APIs automática

Existem muitas ferramentas especializadas e automatizadas de descoberta de APIs. Um API gateway, por exemplo, é um "intermediário" centralizado que recebe e direciona chamadas de API. Os gateways ajudam a catalogar e monitorar APIs e, normalmente, fazem grande parte do aumento da descoberta de APIs como parte de seu trabalho.

Há outros serviços especializados de proteção de APIs que oferecem descoberta automática de APIs. Ao procurar por esse serviço, é comum buscar um provedor que ofereça uma postura de segurança robusta, conformidade com padrões conhecidos (como a especificação OpenAPI, que evita que seja vítima dos 10 principais riscos de segurança de APIs do OWASP ) e facilidade de integração com a plataforma da organização.

A automação pode tornar a melhoria do ciclo de vida de uma API muito mais eficiente e garantir que apenas APIs seguras tenham acesso a aplicações de software e recursos associados.

Soluções relacionadas
IBM webMethods Hybrid Integration

Habilite a integração dinâmica e escalável que se adapta às necessidades de negócios em evolução. Automação impulsionada por IA e orientada por APIs

Descubra o IBM webMethods Hybrid Integration
Software e soluções de integração da IBM

Libere o potencial dos negócios com as soluções de integração da IBM, que conectam aplicações e sistemas para acessar dados críticos de forma rápida e segura.

Explore as soluções de integração da IBM
Serviços de consultoria de nuvem

Aproveite a nuvem híbrida ao máximo de seu valor na era da IA agêntica

Explore serviços de consultoria em nuvem
Dê o próximo passo

Habilite a integração dinâmica e escalável que se adapta às necessidades de negócios em evolução. Automação impulsionada por IA e orientada por APIs.

Descubra o IBM webMethods Hybrid Integration Receba insights do setor