Gerir protocolos e cifras em API Management do Azure

APLICA-SE A: Todos os níveis de API Management

API Management do Azure suporta múltiplas versões do protocolo Transport Layer Security (TLS) para proteger o tráfego API para:

  • Lado do cliente (cliente para gateway de gestão de APIs)
  • Lado do backend (passarela de gestão de API para o backend)

O API Management também suporta múltiplos conjuntos de cifras usados pelo gateway da API.

A API Management suporta versões TLS até TLS 1.3 para conectividade cliente e backend, bem como várias suítes de cifras suportadas.

Important

Os serviços do Azure estão a fazer a transição para exigir TLS 1.2 ou posterior para todas as ligações. Compreender quais as versões TLS suportadas e o que acontece quando um cliente usa uma versão não suportada ajuda-o a manter as aplicações cliente conectadas e seguras. Para mais informações, consulte a aposentação das versões TLS 1.0 e TLS 1.1 no API Management do Azure.

Este artigo mostra-lhe como gerir protocolos e configuração de cifras para uma instância do API Management do Azure.

 Captura de ecrã da gestão de protocolos e cifras no Azure portal.

Nota

  • Se você estiver usando o gateway auto-hospedado, consulte Segurança do gateway auto-hospedado para gerenciar protocolos TLS e pacotes de codificação.
  • As seguintes camadas não suportam alterações na configuração de cifra padrão: Consumo, Basic v2, Standard v2, Premium v2.
  • Em espaços de trabalho, o gateway gerenciado não oferece suporte a alterações no protocolo padrão e na configuração de cifra.

Nota

Dependendo do nível de serviço API Management, as alterações podem demorar entre 15 a 45 minutos ou mais a ser aplicadas. Uma instância no nível de serviço para programadores tem interrupção durante o processo. As instâncias nos escalões Básico e Superior não têm períodos de inatividade durante o processo.

Pré-requisitos

Vai à tua instância de API Management

  1. No portal Azure, pesquise e selecione serviços de Gestão de API:

    Captura de ecrã que mostra serviços de gestão de API nos resultados de pesquisa.

  2. Na página Serviços de API Management, selecione a sua instância de API Management:

    Captura de ecrã que mostra uma instância API Management na página de serviços API Management.

Como gerenciar protocolos TLS e pacotes de codificação

  1. No menu lateral da sua instância API Management, em Security, selecione Protocolos + cifras.
  2. Habilite ou desabilite os protocolos ou cifras desejados.
  3. Selecione Guardar.

Nota

Alguns protocolos ou suites de cifras, como o TLS 1.2 do lado backend, não podem ser ativados ou desativados a partir do Azure portal. Em vez disso, terá de aplicar a chamada REST API para estas atualizações (apenas do lado backend). Utilize a estrutura properties.customProperties na API REST Create/Update API Management Service.

Suporte a TLS 1.3

O suporte ao TLS 1.3 está disponível em todos os níveis de serviço de API Management. Na maioria dos casos criados nessas camadas de serviço, o TLS 1.3 é permanentemente habilitado por padrão para conexões do lado do cliente. A ativação do TLS 1.3 de back-end é opcional. O TLS 1.2 também é habilitado por padrão nos lados do cliente e do back-end.

O TLS 1.3 é uma revisão importante do protocolo TLS que oferece segurança e desempenho aprimorados. Ele inclui recursos como latência reduzida de handshake e segurança aprimorada contra certos tipos de ataques.

Opcionalmente, habilite o TLS 1.3 quando os clientes exigirem renegociação de certificado

O TLS 1.3 não suporta renegociação de certificados. A renegociação de certificados no TLS permite que o cliente e o servidor renegociem parâmetros de conexão no meio da sessão para autenticação sem encerrar a conexão.

As instâncias de API Management que são detetadas como dependentes da renegociação de certificados do cliente não têm o TLS 1.3 ativado por defeito. Nestes casos, pode optar por ativar manualmente o TLS 1.3.

Advertência

Se suas APIs forem acessadas por clientes compatíveis com TLS que dependem da renegociação de certificados, habilitar o TLS 1.3 para conexões do lado do cliente fará com que esses clientes não consigam se conectar. Analise as APIs que usaram recentemente a renegociação de certificados antes de habilitar o TLS 1.3 do lado do cliente em qualquer serviço que não o tenha habilitado por padrão.

Para habilitar o TLS 1.3 para conexões do lado do cliente nessas instâncias, defina as configurações na página Protocolos + cifras :

  1. Na página Protocolos + cifras , na seção Protocolo cliente , ao lado de TLS 1.3, selecione Exibir e gerenciar configuração.
  2. Analise a lista de renegociações recentes de certificados de clientes. A lista mostra operações de API em que os clientes usaram recentemente a renegociação de certificados de cliente.
  3. Se optar por ativar o TLS 1.3 para ligações do lado do cliente, em Alterar o estado do TLS 1.3, selecione Ativar.
  4. Selecione Fechar.

Depois de habilitar o TLS 1.3, revise as métricas de solicitação de gateway ou as exceções relacionadas ao TLS em logs que indicam falhas de conexão TLS. Se necessário, desative o TLS 1.3 para conexões do lado do cliente e faça o downgrade para o TLS 1.2.

Se você precisar desabilitar o TLS 1.3 para conexões do lado do cliente nessas instâncias, defina as configurações na página Protocolos + cifras :

  1. Na página Protocolos + cifras , na seção Protocolo cliente , ao lado de TLS 1.3, selecione Exibir e gerenciar configuração.
  2. Em Alterar o estado do TLS 1.3, selecione Desativar.
  3. Selecione Fechar.

TLS 1.3 de back-end

A ativação do TLS 1.3 de back-end é opcional. Se a ativares, a API Management usa TLS 1.3 para ligações aos teus serviços de backend.

Advertência

Ativar o TLS 1.3 para ligações do lado backend causará falhas de ligação com serviços backend que dependem da renegociação de certificados do cliente entre a API Management e os backends.

Você pode habilitar o TLS 1.3 de back-end na página Protocolos + cifras :

  1. Na página Protocolos + cifras , na secção de protocolos Backend , ao lado do TLS 1.3, selecione Visualizar e gerir configuração.
  2. Em Alterar o estado do TLS 1.3, selecione Ativar.
  3. Selecione Guardar.

Comportamento do cliente com uma versão TLS não suportada

Quando um cliente acede ao API Management do Azure usando uma versão TLS que não cumpre a versão mínima TLS, o pedido falha com o código de erro 400 (Pedido Mau) e uma mensagem a indicar que a versão TLS usada não é permitida para fazer pedidos.