Descrição geral da política TLS do Gateway de Aplicação
Você pode usar o Gateway de Aplicativo do Azure para centralizar o gerenciamento de certificados TLS/SSL e reduzir a sobrecarga de criptografia e descriptografia de um farm de servidores back-end. Essa manipulação centralizada de TLS também permite especificar uma política central de TLS adequada aos seus requisitos de segurança organizacional. Isso ajuda você a atender aos requisitos de conformidade, bem como às diretrizes de segurança e às práticas recomendadas.
A política TLS inclui o controle da versão do protocolo TLS, bem como os pacotes de codificação e a ordem em que as cifras são usadas durante um handshake TLS. O Application Gateway oferece dois mecanismos para controlar a política TLS. Você pode usar uma política predefinida ou uma política personalizada.
Detalhes de uso e versão
- SSL 2.0 e 3.0 estão desabilitados para todos os gateways de aplicativos e não são configuráveis.
- Uma política TLS personalizada permite que você selecione qualquer protocolo TLS como a versão mínima do protocolo para seu gateway: TLSv1_0, TLSv1_1, TLSv1_2 ou TLSv1_3.
- Se nenhuma política TLS for escolhida, uma política TLS padrão será aplicada com base na versão da API usada para criar esse recurso.
- As políticas Predefinidas e Customv2 de 2022 que suportam TLS v1.3 estão disponíveis apenas com SKUs (Standard_v2 ou WAF_v2 do Application Gateway V2).
- O uso de uma política Predefinida ou Customv2 de 2022 melhora a segurança SSL e a postura de desempenho de todo o gateway (para Política SSL e Perfil SSL). Por conseguinte, tanto as políticas antigas como as novas não podem coexistir numa porta de entrada. Você deve usar qualquer uma das políticas predefinidas ou personalizadas mais antigas no gateway se os clientes precisarem de versões ou cifras TLS mais antigas (por exemplo, TLS v1.0).
- Os conjuntos de codificação TLS usados para a conexão também são baseados no tipo de certificado que está sendo usado. Os pacotes de codificação usados em "conexões cliente para gateway de aplicativo" são baseados no tipo de certificados de ouvinte no gateway de aplicativo. Considerando que os pacotes de codificação usados no estabelecimento de "conexões de gateway de aplicativo para pool de back-end" são baseados no tipo de certificados de servidor apresentados pelos servidores de back-end.
Política TLS predefinida
O Application Gateway oferece várias políticas de segurança predefinidas. Você pode configurar seu gateway com qualquer uma dessas políticas para obter o nível apropriado de segurança. Os nomes de política são anotados pelo ano e mês em que foram configurados (AppGwSslPolicy<YYYYMMDD>). Cada política oferece diferentes versões de protocolo TLS e/ou pacotes de codificação. Essas políticas predefinidas são configuradas tendo em mente as práticas recomendadas e as recomendações da equipe de Segurança da Microsoft. Recomendamos que você use as políticas TLS mais recentes para garantir a melhor segurança TLS.
A tabela a seguir mostra a lista de pacotes de codificação e suporte de versão mínima de protocolo para cada política predefinida. A ordenação dos pacotes de codificação determina a ordem de prioridade durante a negociação TLS. Para saber a ordem exata dos pacotes de codificação para essas políticas predefinidas, consulte a folha PowerShell, CLI, REST API ou Listeners no portal.
Nomes de política predefinidos (AppGwSslPolicy<YYYYMMDD)> | 20150501 | 20170401 | 20170401S | 20220101 | 20220101S |
---|---|---|---|---|---|
Versão mínima do protocolo | 1.0 | 1.1 | 1.2 | 1.2 | 1.2 |
Versões de protocolo ativadas | 1.0 1.1 1.2 |
1.1 1.2 |
1.2 | 1.2 1.3 |
1.2 1.3 |
Predefinição | True (para a versão < API 2023-02-01) |
False | False | True (para a versão >da API = 2023-02-01) |
False |
TLS_AES_128_GCM_SHA256 | ✗ | ✗ | ✗ | ✓ | ✓ |
TLS_AES_256_GCM_SHA384 | ✗ | ✗ | ✗ | ✓ | ✓ |
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ |
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 | ✓ | ✗ | ✗ | ✓ | ✗ |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 | ✓ | ✗ | ✗ | ✓ | ✗ |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_RSA_WITH_AES_256_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_RSA_WITH_AES_128_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_RSA_WITH_AES_256_GCM_SHA384 | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_RSA_WITH_AES_128_GCM_SHA256 | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_RSA_WITH_AES_256_CBC_SHA256 | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_RSA_WITH_AES_128_CBC_SHA256 | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_RSA_WITH_AES_256_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_RSA_WITH_AES_128_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ |
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ |
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 | ✓ | ✓ | ✓ | ✓ | ✗ |
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 | ✓ | ✓ | ✓ | ✓ | ✗ |
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_DSS_WITH_AES_256_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_DSS_WITH_AES_128_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_RSA_WITH_3DES_EDE_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
Política TLS padrão
Quando nenhuma política SSL específica é especificada na configuração de recursos do gateway de aplicativo, uma política TLS padrão é aplicada. A seleção dessa política padrão é baseada na versão da API usada para criar esse gateway.
- Para versões de API 2023-02-01 ou superiores, a versão mínima do protocolo é definida como 1.2 (há suporte para versões até 1.3). Os gateways criados com essas versões de API verão uma propriedade somente leitura defaultPredefinedSslPolicy:AppGwSslPolicy20220101 na configuração do recurso. Esta propriedade define a política TLS padrão a ser usada.
- Para versões < mais antigas da API 2023-02-01, a versão mínima do protocolo é definida como 1.0 (há suporte para versões até 1.2), pois eles usam a política predefinida AppGwSslPolicy20150501 como padrão.
Se o TLS padrão não atender às suas necessidades, escolha uma política predefinida diferente ou use uma política personalizada.
Nota
O suporte do Azure PowerShell e da CLI para a política TLS padrão atualizada será disponibilizado em breve.
Política TLS personalizada
Se uma política TLS precisar ser configurada para suas necessidades, você poderá usar uma política TLS personalizada. Com uma política TLS personalizada, você tem controle total sobre a versão mínima do protocolo TLS a ser suportada, bem como os pacotes de codificação suportados e sua ordem de prioridade.
Nota
As cifras mais recentes e mais fortes e o suporte a TLSv1.3 só estão disponíveis com a política CustomV2. Proporciona benefícios melhorados em termos de segurança e desempenho.
Importante
- Se você estiver usando uma política SSL personalizada no Application Gateway v1 SKU (Standard ou WAF), certifique-se de adicionar a cifra obrigatória "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" à lista. Essa cifra é necessária para habilitar métricas e registro em log no SKU do Application Gateway v1. Isso não é obrigatório para o Application Gateway v2 SKU (Standard_v2 ou WAF_v2).
- Os pacotes de codificação "TLS_AES_128_GCM_SHA256" e "TLS_AES_256_GCM_SHA384" são obrigatórios para TLSv1.3. Você NÃO precisa mencioná-los explicitamente ao definir uma política CustomV2 com protocolo mínimo versão 1.2 ou 1.3 por meio do PowerShell ou CLI. Assim, esses pacotes de cifras não aparecerão na saída Obter detalhes, com exceção do Portal.
Conjuntos de cifras
O Application Gateway suporta os seguintes pacotes de codificação dos quais você pode escolher sua política personalizada. A ordenação dos pacotes de codificação determina a ordem de prioridade durante a negociação TLS.
- TLS_AES_128_GCM_SHA256 (disponível apenas com Customv2)
- TLS_AES_256_GCM_SHA384 (disponível apenas com Customv2)
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
- TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
- TLS_DHE_RSA_WITH_AES_256_CBC_SHA
- TLS_DHE_RSA_WITH_AES_128_CBC_SHA
- TLS_RSA_WITH_AES_256_GCM_SHA384
- TLS_RSA_WITH_AES_128_GCM_SHA256
- TLS_RSA_WITH_AES_256_CBC_SHA256
- TLS_RSA_WITH_AES_128_CBC_SHA256
- TLS_RSA_WITH_AES_256_CBC_SHA
- TLS_RSA_WITH_AES_128_CBC_SHA
- TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
- TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
- TLS_DHE_DSS_WITH_AES_128_CBC_SHA256
- TLS_DHE_DSS_WITH_AES_256_CBC_SHA
- TLS_DHE_DSS_WITH_AES_128_CBC_SHA
- TLS_RSA_WITH_3DES_EDE_CBC_SHA
- TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
Limitações
- As conexões com servidores back-end são sempre com protocolo mínimo TLS v1.0 e até TLS v1.2. Portanto, apenas as versões TLS 1.0, 1.1 e 1.2 são suportadas para estabelecer uma conexão segura com servidores back-end.
- A partir de agora, a implementação do TLS 1.3 não está habilitada com o recurso "Zero Round Trip Time (0-RTT)".
- Não há suporte para a retomada da sessão TLS (ID ou Tickets).
- O Application Gateway v2 não suporta as seguintes cifras DHE. Eles não serão usados para as conexões TLS com clientes, mesmo que sejam mencionados nas políticas predefinidas. Em vez de cifras DHE, recomendam-se cifras ECDHE seguras e mais rápidas.
- TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
- TLS_DHE_RSA_WITH_AES_128_CBC_SHA
- TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_DHE_RSA_WITH_AES_256_CBC_SHA
- TLS_DHE_DSS_WITH_AES_128_CBC_SHA256
- TLS_DHE_DSS_WITH_AES_128_CBC_SHA
- TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
- TLS_DHE_DSS_WITH_AES_256_CBC_SHA
- Os clientes restritos que procuram suporte para "Negociação de Comprimento Máximo de Fragmento" devem usar as políticas Predefinidas ou Customv2 mais recentes de 2022.
Próximos passos
Se você quiser aprender a configurar uma política TLS, consulte Configurar versões de política TLS e pacotes de codificação no Application Gateway.