Esta página aplica-se ao Apigee e ao Apigee Hybrid.
Veja a documentação do
Apigee Edge.
A segurança da última milha protege os serviços de back-end que são usados como proxy pelos serviços de API. O objetivo principal da segurança da última milha é impedir os chamados ataques de "end-run", em que um programador de apps descobre o URL de um serviço de back-end e ignora todos os proxies de API para aceder diretamente ao URL de back-end.
Seguem-se as principais opções para configurar a segurança da última milha:
- TLS/SSL do cliente
- Autenticação de saída
TLS/SSL do cliente
O mecanismo principal para proteger a última milha é o TLS/SSL do cliente, que também é conhecido como "autenticação mútua".
Consulte as opções de configuração do TLS.
Autenticação de saída
A segurança da última milha também pode ser aplicada exigindo que o proxy de API apresente uma credencial ao serviço de back-end.
Por exemplo, pode querer que um proxy de API apresente uma chave de API ao seu serviço de back-end. Também pode fazer com que um proxy de API obtenha e apresente um token de acesso de credenciais do cliente OAuth.
Chave da API
As chaves da API podem ser aplicadas a pedidos de saída de proxies de API para serviços de back-end. Isto pressupõe que o serviço de back-end é uma API capaz de emitir e validar chaves da API.
Se configurar um proxy de API para apresentar uma chave da API em pedidos de saída, tem de armazenar a chave da API num local onde possa ser obtida pelo proxy de API em tempo de execução. Uma localização disponível para armazenar chaves da API é um mapa de chave/valor. Consulte a política de operações de mapeamento de chaves-valores.
Pode usar o tipo de política AssignMessage para adicionar a chave da API como um cabeçalho HTTP, um parâmetro de consulta ou um elemento de carga útil ao pedido de saída. Consulte a política de atribuição de mensagens.
Credenciais do cliente OAuth
As credenciais de cliente OAuth podem ser usadas para adicionar uma camada de revogabilidade às chaves de API. Se os seus serviços de back-end suportarem credenciais do cliente OAuth, pode configurar um proxy de API para apresentar uma chave de acesso de credenciais do cliente para cada pedido.
O proxy da API tem de ser configurado para fazer uma chamada externa para obter o token de acesso a partir do seu ponto final do token. O proxy da API também é necessário para colocar em cache o token de acesso, para evitar que obtenha um novo token de acesso para cada chamada.
É possível usar várias abordagens para implementar credenciais de cliente de saída.
Pode modificar este exemplo para chamar o seu ponto final de token para obter um token de acesso. Este exemplo usa JavaScript para anexar o token ao pedido de saída como um cabeçalho de autorização HTTP. Também pode usar a política de mensagens de atribuição para este fim.
SAML
O tipo de política GenerateSAMLAssertion pode ser usado para anexar uma declaração SAML a uma mensagem de pedido XML de saída do proxy de API para um serviço de back-end. Isto permite que o serviço de back-end realize a autenticação e a autorização em pedidos recebidos de proxies de API.
Consulte as políticas de declaração SAML.