Quando usar o Gerenciamento de API do Azure
Agora vamos discutir alguns cenários que ilustram quando é apropriado usar o Gerenciamento de API do Azure. Usando o serviço de entrega de comida como exemplo, vamos investigar o gerenciamento do ciclo de vida da API com relação à padronização de APIs, centralização do gerenciamento e exposição de API e aprimoramento da segurança da API. Podemos usar os seguintes critérios para ajudá-lo a decidir se o Gerenciamento de API do Azure é uma escolha adequada para gerenciar e publicar o inventário de APIs da sua organização:
Critérios de decisão
Critérios | Análise |
---|---|
Número de APIs | A principal consideração é o número de APIs que você gerencia. Quanto mais APIs você implantar, maior será a necessidade de padronização de implantação e centralização do controle de API. |
Taxa de alterações da API | A próxima consideração é a taxa na qual sua organização implementa revisões e versões de API. Quanto mais rápido você criar revisões de API e publicar novas versões de API, maior será a necessidade de um sistema de controle de versão robusto e flexível. |
Carga de administração da API | A última consideração é a quantidade de sobrecarga de política que você aplica às suas APIs. Políticas como cotas de uso, limites de taxa de chamada, transformações de solicitação e validação de solicitação. Quanto mais configurações e opções suas APIs exigirem, maior será a necessidade de implementações de políticas padronizadas e centralizadas. |
Aplicar os critérios
O Gerenciamento de API do Azure é a escolha correta para gerenciar APIs durante seus ciclos de vida quando você tem uma implantação de API grande que muda com frequência e requer uma sobrecarga de política significativa. No entanto, esses critérios não se aplicam igualmente a todos os casos de uso. Vamos considerar como esses critérios se aplicam aos casos de uso do nosso cenário.
Você deve usar o Gerenciamento de API do Azure para padronizar APIs?
Ao habilitar o gerenciamento de várias APIs a partir de uma única interface administrativa, o Gerenciamento de API do Azure facilita a criação de consistência entre várias APIs. Você pode padronizar muitos recursos da API, incluindo:
- Especificações. A padronização de especificações de API, como o uso de REST para todas as APIs e o uso de um esquema de nomenclatura consistente para pares nome-valor JSON, reduz o tempo de desenvolvimento, diminui os erros e permite que sua organização responda mais rapidamente às sugestões dos clientes e às forças de mercado.
- Documentação. A padronização da documentação da API permite que os desenvolvedores se atualizem rapidamente com uma API. Ele também reduz as consultas de suporte técnico e incentiva os desenvolvedores a usar mais de suas APIs.
- URLs. Padronizar a URL base para suas APIs reduz os erros do consumidor e dá às implantações de API uma aparência mais profissional.
- Análise. A padronização da análise de API permite que as equipes de gerenciamento e os engenheiros comparem o uso e o desempenho em várias APIs.
- regulamentos. Para APIs que devem atender às regras e regulamentações governamentais ou do setor, a padronização ajuda a garantir a conformidade em todas as APIs.
Na maioria dos casos, a necessidade de padronização se expande como:
- O número de APIs cresce.
- A taxa na qual as APIs são revisadas aumenta.
- A carga de administração da API fica maior.
Essa necessidade é verdadeira para o cenário da plataforma de entrega de comida, que exige consistência entre as APIs do aplicativo móvel, do aplicativo Web e dos restaurantes parceiros.
Você deve usar o Gerenciamento de API do Azure para centralizar as operações de API?
O Gerenciamento de API do Azure aprimora a centralização de todas as operações de API reunindo várias APIs sob um único guarda-chuva administrativo. Sem um serviço de gerenciamento de API, cada API fica por conta própria em termos de administração, implantação e acesso do desenvolvedor. Esse modelo descentralizado geralmente resulta em esforços duplicados e aumento das despesas gerais. A centralização das operações de API pode resultar nos seguintes benefícios:
- Administração. Aplique operações administrativas, como criação de políticas, gerenciamento de usuários e análises, em um único local, como a interface administrativa fornecida pelo Gerenciamento de API do Azure. A centralização das tarefas administrativas torna a execução dessas tarefas mais simples e eficiente.
- Implementação. Encaminhe todas as solicitações de API por meio de uma única URL base, como o ponto de extremidade criado pelo gateway de Gerenciamento de API do Azure. A centralização da implantação facilita a aplicação de políticas e a aplicação de transformações.
- Acesso de desenvolvedor. Coloque todos os recursos do desenvolvedor, como documentação, exemplos de código, testes e assinaturas, em um único local, como o portal do desenvolvedor no Gerenciamento de API do Azure. Centralizar o acesso do desenvolvedor torna mais fácil para os desenvolvedores encontrar e usar suas APIs.
As eficiências decorrentes da centralização das operações de API tendem a aumentar com o número de APIs e com o tamanho geral da carga administrativa que você impõe às APIs. Ter APIs centralizadas é uma grande ajuda quando as APIs são atualizadas com frequência, pois permite um único esquema de controle de versão para todos os produtos.
Todos esses fatores se aplicam fortemente ao nosso cenário de plataforma de entrega de comida. Por exemplo, o acesso centralizado do consumidor através do portal do desenvolvedor facilita a inscrição de novos desenvolvedores, aumentando a monetização das APIs da plataforma.
Você deve usar o Gerenciamento de API do Azure para proteger o acesso às suas APIs?
O Gerenciamento de API do Azure foi projetado com a segurança da API em mente. Muitas organizações dependem de APIs para a troca interna e externa de dados entre aplicativos e dispositivos. Uma abordagem aleatória ou inconsistente da segurança é apenas pedir problemas. Uma estratégia de segurança de API adequada abrange as seguintes bases:
- Permissões. Controle quem pode trabalhar com uma API e o que pode fazer com ela. No Gerenciamento de API do Azure, ter todos os seus consumidores de API como usuários e ser capaz de organizar esses usuários em grupos torna mais fácil e eficiente aplicar permissões para controlar o acesso à API.
- Acesso. Permita apenas que usuários autorizados enviem solicitações. Com o Gerenciamento de API do Azure, o portal do desenvolvedor fornece chaves de assinatura aos usuários e você pode restringir o acesso a APIs usando várias formas de autenticação e tokens da Web JSON.
- Proteção. Proteja a API contra uso mal-intencionado. O Gerenciamento de API do Azure permite que você acelere o acesso à API usando limites de taxa e cotas de uso para ajudar a evitar o uso indevido (intencional ou acidental) da API pelo consumidor.
- Conformidade. Certifique-se de que suas APIs satisfaçam todas as políticas de segurança corporativas ou governamentais. Ter todas as suas APIs juntas no Gerenciamento de API do Azure facilita a configuração dessas APIs com políticas de segurança que alcançam a conformidade.
Quanto mais APIs você gerenciar, maior será a necessidade de segurança. Ter mais APIs significa uma maior superfície de ataque e um maior risco de violações ou vazamentos acidentais de dados. Além disso, quanto mais vezes você revisar suas APIs, maior a chance de uma revisão ou nova versão descobrir uma falha de segurança.
Essas preocupações com a segurança são primordiais em nosso cenário de entrega de alimentos. Nossa plataforma gera e armazena uma grande quantidade de dados confidenciais, incluindo pagamentos de restaurantes, nomes e endereços de clientes e locais de veículos de entrega.