O que é gerenciamento de API?

O que é gerenciamento de API? O gerenciamento de API refere-se aos processos de distribuição, controle e análise das APIs que conectam aplicativos e dados na empresa e nas nuvens. O objetivo do gerenciamento de API é permitir que organizações que criam APIs ou usam APIs de terceiros para monitorar a atividade e garantir que as necessidades dos desenvolvedores e aplicativos que usam a API sejam atendidas.

Durante toda a semana o Blog Minuto da Segurança trouxe até você que nos acompanha diversos artigos sobre APIs e sua proteção, aqui finalizamos com um artigo do Redhat sobre gerenciamento de APIs. Esperamos que tenham gostado e continuem nos acompanhando, pois em breve traremos mais sobre este assunto e outros que costumeiramente recebem pouca atenção, mas podem comprometer todo o ambiente de proteção da empresa.
As organizações estão implementando estratégias para gerenciar suas APIs para que possam responder às mudanças rápidas nas demandas dos clientes. Na maioria dos casos, essas organizações adotam uma arquitetura de micro-serviços para atender às demandas, agilizando o desenvolvimento de software. APIs baseadas em HTTP se tornaram o método preferido para interação síncrona entre arquiteturas de micro-serviços. Essas APIs são a cola que conecta todos os micro-serviços. O gerenciamento dessas APIs permite que uma organização certifique-se de que as APIs sejam usadas em conformidade com as políticas corporativas e permite a governança por níveis apropriados de segurança, pois alguns serviços podem exigir políticas de segurança diferentes de outros.
O gerenciamento de API envolve principalmente a centralização do controle de seu programa de API – incluindo análises, controle de acesso, monetização e fluxos de trabalho do desenvolvedor. Uma solução de gerenciamento de API, como o Red Hat 3scale API Management , oferece confiabilidade, flexibilidade, qualidade e velocidade. Para atingir esses objetivos e garantir que APIs públicas e internas sejam consumíveis e seguras, uma solução de gerenciamento de API deve fornecer controle de acesso, limites de taxa e políticas de uso, no mínimo. A maioria das soluções de gerenciamento de API geralmente também inclui os seguintes recursos:

  • Um portal para desenvolvedores. Um portal de desenvolvedor é uma prática recomendada comum para gerenciamento de API. Os portais do desenvolvedor geralmente fornecem documentação de API junto com os processos de integração do desenvolvedor, como inscrição e administração de conta.
  • Um gateway de API. gateway de API é o único ponto de entrada para todos os clientes. O gateway também determina como os clientes interagem com APIs por meio do uso de políticas.
  • Gerenciamento do ciclo de vida da API. As APIs devem ser gerenciáveis ​​desde o design, passando pela implementação, até a aposentadoria.
  • Analytics. É importante saber o que está acontecendo com suas APIs – qual consumidor ou aplicativo está chamando qual API e com que frequência. Também é essencial saber quantas APIs falharam e por quê.
  • Suporte para monetização de API. Monetize o acesso aos micro-serviços por trás das APIs por meio de contratos de uso. O gerenciamento de API permite que você defina contratos de uso com base em métricas, como o número de chamadas de API. Os consumidores podem ter níveis de acesso segmentados e diferenciados, e a qualidade do serviço pode ser oferecida a diferentes segmentos.

Esses recursos são considerados durante o design da API para que a API possa usar componentes autogerenciados ou em nuvem para fornecer controle de tráfego, segurança e aplicação de política de acesso. APIs bem projetadas podem ser compartilhadas, protegidas, distribuídas, controladas e monetizadas em uma plataforma de infraestrutura construída para desempenho, controle do cliente e crescimento futuro.

Micro-serviços e APIs são a base para o desenvolvimento rápido de componentes de aplicativos inovadores para atender às novas necessidades de negócios – uma abordagem conhecida como desenvolvimento de aplicativos nativos da nuvem . No entanto, essa abordagem tem seus desafios.
O principal desafio técnico para formar micro-serviços é dividir sistemas maiores em seus componentes menores. Como mencionamos, as APIs permitem que esses componentes menores se conectem a fontes de dados e entre si.
Outro desafio apresentado por uma arquitetura de micro-serviços é como coordenar os muitos micro-serviços que mudam com frequência. A descoberta de serviço torna isso mais fácil. O gerenciamento de API fornece os mecanismos de descoberta necessários para garantir que os micro-serviços disponíveis possam ser encontrados e a documentação sobre como usá-los seja compartilhada por meio do portal do desenvolvedor.
Os micro-serviços exigem uma abordagem integrada de segurança. Os mecanismos de segurança diferem dependendo do tipo de API: os serviços externos exigem mecanismos de segurança diferentes dos internos. Para APIs menos essenciais, a proteção simples com chaves de API geralmente é suficiente. Para APIs externas ou críticas, uma abordagem mais segura, como OAuth, será necessária.
Faça a si mesmo estas perguntas críticas:

  1. Como controlamos o acesso à nossa API?
  2. Como capturamos métricas e lidamos com alertas?
  3. Como os picos de uso devem ser gerenciados?
  4. Quem é responsável pelo tempo de atividade da API?
  5. Como nos sentimos sobre o uso indesejado da API?

Sem medir os efeitos de nossos esforços, não temos como avaliar nosso sucesso. Analytics fornece dados sobre atividades de API, mas ainda devemos fornecer uma definição de sucesso. Ao definir o sucesso em sua organização, considere estes 5 objetivos principais de desempenho para APIs:

  1. Confiabilidade. Confiabilidade é a disponibilidade da API para os desenvolvedores. Uma métrica útil para medir a confiabilidade é o tempo de inatividade . A API está sempre disponível para uso? Outra métrica é a cota, que define quantas chamadas de API podem ser feitas por um desenvolvedor em um determinado período. Uma cota protege uma API de abusos e torna seu gerenciamento mais previsível. Os modelos de negócios e planos de preços de alguns provedores de API são baseados em cotas.
  2. Flexibilidade. Flexibilidade se refere às opções que os desenvolvedores têm ao adotar APIs. Maior flexibilidade em uma API significa maior esforço (e custo) para a organização que gerencia a API.
  3. Qualidade. Qualidade é a conformidade consistente do comportamento da API com as expectativas do desenvolvedor. É uma forma de medir a satisfação do desenvolvedor com a API.
  4. Velocidade. A velocidade pode ser medida pela latência de acesso e taxa de transferência . A velocidade pode ser influenciada por técnicas como limitação ou armazenamento em cache.
  5. Custo. O objetivo de medir o custo é fornecer aos desenvolvedores o melhor valor pelo seu dinheiro. Todos os outros 4 objetivos contribuem, de uma forma ou de outra, para o objetivo de custo.
Fonte Redhat

Veja também:

Sobre mindsecblog 1772 Artigos
Blog patrocinado por MindSec Segurança e Tecnologia da Informação Ltda.

3 Trackbacks / Pingbacks

  1. Oito dicas para uma Black Friday segura
  2. Skimmer de cartão de crédito foge da detecção de máquinas virtuais
  3. Emotet está de volta, malware já foi o mais perigoso do mundo

Deixe sua opinião!