5 maneiras de combater a proliferação de APIs (e por que você deveria se importar)

NGINX | 17 de agosto de 2022

Este é o primeiro artigo de uma série de duas partes sobre o API Connectivity Manager:

As APIs são o tecido conjuntivo da Internet moderna, conectando dados da borda à nuvem e aos data centers locais. De acordo com o Relatório sobre o Estado da Estratégia de Aplicações de 2021 da F5, o uso de APIs é o mais popular entre os diversos métodos que as organizações estão adotando para se modernizar:

  • 58% das organizações estão adicionando uma camada de APIs para viabilizar interfaces de usuário modernas
  • 51% estão adicionando componentes de aplicativos modernos (por exemplo, Kubernetes)
  • 47% estão refatorando (modificando o próprio código da aplicação)
  • 40% estão migrando para a nuvem pública (lift and shift) sem modernização

Em uma economia orientada por APIs, elas precisam ser 100% confiáveis. Porém, à medida que as empresas e as aplicações crescem, a complexidade operacional se multiplica. As aplicações nativas da nuvem são cada vez mais distribuídas e descentralizadas por definição, sendo compostas por dezenas, centenas ou até milhares de APIs implantadas em ambientes de nuvem, locais e de borda.

Uma pesquisa recente do Escritório do CTO da F5 identificou a proliferação contínua de APIs como uma ameaça significativa para as empresas que estão passando por uma transformação digital. Mas o que isso significa?

O que é a proliferação de APIs?

A proliferação de APIs descreve dois desafios interligados que surgem à medida que as organizações implementam a transformação digital: o crescimento exponencial do número de APIs e a distribuição física delas entre diversas arquiteturas e equipes.

Os quatro principais fatores que impulsionam a proliferação de APIs são:

  • Infraestrutura híbrida – Atualmente, 81% das empresas operam em três ou mais arquiteturas incluindo nuvens públicas, data centers locais e infraestrutura de borda.
  • Arquiteturas de microsserviços – A crescente adoção de arquiteturas de microsserviços leva à proliferação de endpoints de API à medida que novos serviços entram em operação.
  • Implantação contínua de software – Os desenvolvedores podem criar rapidamente dezenas de APIs ou várias versões de uma única API em um curto período.
  • APIs abandonadas – À medida que os desenvolvedores passam a dar suporte e trabalhar em outros projetos, eles deixam de gerenciar e manter as APIs que criaram.

A proliferação de APIs é uma ameaça significativa

Muitas empresas ainda não reconhecem a proliferação de APIs como um problema significativo – mas ela é um problema. As organizações que compreenderem e abordarem as causas fundamentais da proliferação de APIs serão as que prosperarão na próxima década.

A proliferação descontrolada de APIs traz desafios operacionais e de segurança significativos para as empresas. À medida que os endpoints de API se multiplicam entre diversas equipes e ambientes, proteger e gerenciar as APIs torna-se um desafio monumental. Para as empresas, essa proliferação muitas vezes resulta em custos ocultos — menor produtividade dos desenvolvedores, aumento do retrabalho e revisões mais lentas — que não são facilmente mensuráveis até que seja tarde demais.

Os principais desafios da proliferação de APIs incluem:

  • Falta de visibilidade – Arquiteturas híbridas tornam extremamente difícil obter uma visão unificada do tráfego e das configurações de APIs
  • Nenhuma fonte única e confiável – Os desenvolvedores têm dificuldade para encontrar APIs e documentação atualizada
  • Confiabilidade reduzida – Configurações incorretas se tornam mais comuns, resultando em interrupções
  • Aumento das ameaças à segurança – Endpoints de API desprotegidos são alvos fáceis para ataques

Como combater a proliferação de APIs?

O primeiro passo para criar uma infraestrutura de APIs resiliente é controlar a proliferação de APIs por meio de uma estratégia abrangente que incorpore as melhores práticas de atribuição contínua de responsabilidade pelas APIs e um catálogo central de APIs ou serviços. Em seguida, implemente uma camada de governança de APIs para simplificar o gerenciamento do ciclo de vida das APIs de forma prática e escalável.

Na NGINX, desenvolvemos uma solução de plano de gerenciamento para reduzir a complexidade do gerenciamento de APIs. O API Connectivity Manager, parte do F5 NGINX Management Suite, oferece uma interface única para conectar, administrar e proteger suas APIs, independentemente de onde estejam localizadas ou de quem as esteja desenvolvendo.

O API Connectivity Manager ajuda você a implementar as cinco táticas essenciais para combater a proliferação de APIs e gerenciá-las em escala:

Tática nº 1: implemente uma estratégia de governança de APIs

O gerenciamento e o controle centralizados facilitam a descoberta, a conexão e a proteção de APIs em uma única arquitetura ou cluster. A proliferação de APIs exige uma mudança na forma de pensar — de um modelo puramente hierárquico para um modelo distribuído e com escalabilidade autônoma.

Como a NGINX ajuda – Com o API Connectivity Manager, você pode implementar um modelo de governança flexível que equilibra políticas globais com controles granulares, permitindo que os responsáveis pelas APIs gerenciem políticas locais. Isso ajuda a acelerar o lançamento no mercado sem comprometer a supervisão consistente da segurança e da conformidade.

As equipes de plataforma e infraestrutura podem garantir a consistência das APIs em toda a empresa por meio de políticas globais de registro em log, códigos de resposta de erro, configuração de TLS e muito mais. Os desenvolvedores que criam e gerenciam APIs mantêm o controle sobre políticas no nível do serviço, como limitação de taxa, autenticação e autorização.

Tática nº 2: crie uma única fonte confiável para a descoberta de APIs

À medida que o número de APIs e a complexidade dos aplicativos aumentam, torna-se muito difícil descobrir e acompanhar quais APIs estão disponíveis e onde estão localizadas. Se as APIs estiverem ocultas na infraestrutura de um determinado microsserviço e não forem registradas, as equipes responsáveis por outros microsserviços não conseguirão encontrá-las nem integrá-las aos seus projetos.

Como o NGINX ajuda – Com o API Connectivity Manager, você pode criar catálogos de serviços e portais de APIs nos quais os desenvolvedores podem descobrir e usar suas APIs. Uma boa experiência no portal do desenvolvedor incentiva o consumo das suas APIs ao oferecer um local centralizado com informações sobre quais APIs estão disponíveis e como usá-las, além de ferramentas para gerar credenciais.

Tática nº 3: Garanta o versionamento e a documentação adequados

Os portais de APIs são um bom primeiro passo. No entanto, surgem problemas quando as especificações das APIs mudam durante os ciclos de desenvolvimento. Isso significa que o serviço remoto que chama uma API também precisa mudar. Essa abordagem pode funcionar se todos os microsserviços estiverem sendo projetados pela mesma equipe para a mesma aplicação, mas não quando as APIs são publicadas para consumo por terceiros.

Ao mesmo tempo, manter a documentação é uma dor de cabeça para os desenvolvedores. Após um período inicial de intensa atividade, os portais de APIs muitas vezes ficam desatualizados, transformando-se em cidades-fantasma repletas de APIs sem suporte e documentação obsoleta, o que deixa as partes interessadas e os usuários das APIs perdidos e frustrados.

Como o NGINX ajuda – Com o API Connectivity Manager, você pode integrar a publicação e a documentação de APIs em um fluxo de trabalho contínuo para desenvolvedores de APIs. Os responsáveis pelas APIs podem publicá-las e gerar a documentação simultaneamente usando a Especificação OpenAPI, economizando tempo e garantindo que a documentação permaneça atualizada para todos.

Tática nº 4: forneça métricas e visibilidade do tráfego de APIs

Entender onde as APIs estão localizadas e como estão configuradas é um dos desafios mais significativos enfrentados pelas empresas. Sem uma visão consistente do tráfego de APIs em todos os ambientes, identificar problemas de desempenho e ameaças à segurança é difícil, se não impossível.

Como o NGINX ajuda – Com o API Connectivity Manager, você pode criar uma plataforma única que oferece acesso a métricas importantes para ajudar a aplicar as práticas recomendadas e garantir o desempenho e a confiabilidade. Os responsáveis pela infraestrutura podem monitorar o tráfego e as configurações das APIs, aplicar formatos de log padronizados e exportar dados para as soluções de monitoramento de sua preferência.

Tática nº 5: aplique a segurança de APIs em escala

Mais de 90% das empresas enfrentaram um incidente de segurança de API em 2020. A superfície de ataque da sua organização aumenta a cada novo endpoint de API que entra em operação. Em grande escala, a segurança não pode ser um recurso adicional – ela deve ser incorporada a todo o ciclo de vida, desde a especificação até o código e a implantação.

Como a NGINX ajuda – Com o API Connectivity Manager, você pode proteger APIs com dois componentes essenciais de segurança: controle de acesso e proteção de APIs. Implemente o controle de acesso às APIs gerenciando a autenticação e a autorização com JSON Web Tokens (JWTs), chaves de API ou OAuth2/OpenID Connect. Nos próximos meses, o API Connectivity Manager adicionará suporte ao NGINX App Protect WAF para que você possa proteger seus gateways de API e se defender contra ameaças comuns e avançadas com suporte pronto para uso ao OWASP API Security Top 10, validação de esquema e muito mais.

Acelere o lançamento no mercado com o API Connectivity Manager

Ao solucionar os desafios impostos pela proliferação de APIs, você pode transformar a complexidade de múltiplas arquiteturas em uma vantagem competitiva. O API Connectivity Manager ajuda você a criar um ecossistema de APIs resiliente, que oferece suporte à governança em escala com a velocidade e a flexibilidade de que seus desenvolvedores precisam.

Em nosso próximo post, vamos nos aprofundar na experiência dos desenvolvedores de APIs e abordar temas como integração de CI/CD, fluxos de trabalho de autoatendimento e gerenciamento do ciclo de vida das APIs.

Comece agora

Inicie uma avaliação gratuita de 30 dias do NGINX Management Suite, que inclui o API Connectivity Manager e o Instance Manager.

Recursos relacionados


Compartilhar

Sobre o autor

Publicações relacionadas no blog

Como o F5 NGINX One aprimora o gerenciamento e a observabilidade
NGINX | 10/10/2024

Como o F5 NGINX One aprimora o gerenciamento e a observabilidade

Descubra como o F5 NGINX One aprimora o gerenciamento e a observabilidade de ambientes híbridos e multicloud ao oferecer um console web centralizado baseado em SaaS, com insights em tempo real, conformidade automatizada e gerenciamento simplificado de configurações.

Do OpenAPI ao NGINX como gateway de API usando uma API declarativa
NGINX | 17/06/2024

Do OpenAPI ao NGINX como gateway de API usando uma API declarativa

Descubra como transformar uma definição de esquema OpenAPI em uma configuração NGINX totalmente funcional, operando como um API Gateway com a segurança de um Web Application Firewall e um Portal do Desenvolvedor, usando uma abordagem declarativa de API.

Como gerenciar picos repentinos de tráfego e sobrecarga do servidor
NGINX | 14/07/2021

Como gerenciar picos repentinos de tráfego e sobrecarga do servidor

Picos de tráfego e sobrecarga de servidores são preocupações sérias para varejistas online em qualquer época, mas especialmente durante a “Cyber Season” de compras de fim de ano. Detalhamos como você pode aproveitar as soluções de entrega de aplicações de nível de produção da NGINX para se preparar para aumentos repentinos de tráfego.

Distribuição segura de chaves privadas SSL com o NGINX
NGINX | 02/04/2019

Distribuição segura de chaves privadas SSL com o NGINX

Descrevemos três maneiras progressivamente mais seguras de proteger chaves privadas SSL ao configurar o NGINX para processar tráfego HTTPS: permitir acesso de leitura apenas ao usuário root, criptografar as chaves com senhas armazenadas separadamente e distribuir as senhas a partir de um repositório central.

Agrupando solicitações de API em lotes com NGINX Plus e o módulo JavaScript do NGINX
NGINX | 24/05/2018

Agrupando solicitações de API em lotes com NGINX Plus e o módulo JavaScript do NGINX

O módulo JavaScript do NGINX lançado com o NGINX Plus R15 oferece suporte a subsolicitações, possibilitando uma classe totalmente nova de casos de uso para o NGINX Plus. Este exemplo completo também usa a API do NGINX Plus e os módulos de chave-valor para converter solicitações de API dos clientes em solicitações separadas para as APIs dos microsserviços que compõem um aplicativo.

Como superar o esgotamento de portas efêmeras no NGINX e no NGINX Plus
NGINX | 19/04/2016

Como superar o esgotamento de portas efêmeras no NGINX e no NGINX Plus

Confira dicas para evitar o esgotamento de portas efêmeras com ajustes no kernel do Linux, conexões keepalive e conexões vinculadas dinamicamente a endereços IP locais.