Partilhar via


Usar mTLS em Aplicativos de Contêiner do Azure

O mTLS (Mutual Transport Layer Security) é uma extensão do protocolo TLS padrão que fornece autenticação mútua entre cliente e servidor. Os Aplicativos de Contêiner do Azure dão suporte à execução de aplicativos habilitados para mTLS para fornecer maior segurança em seus aplicativos.

Nos Aplicativos de Contêiner do Azure, todas as solicitações de entrada passam pelo Envoy antes de serem roteadas para o aplicativo de contêiner de destino. Quando você usa mTLS, o cliente troca certificados com o Envoy. Cada um desses certificados é colocado no cabeçalho X-Forwarded-Client-Cert , que é enviado para o aplicativo.

Para criar um aplicativo mTLS em Aplicativos de Contêiner do Azure, você precisa:

  1. Configure os Aplicativos de Contêiner do Azure para exigir certificados de cliente de pares.
  2. Extraia X.509 certificados de solicitações.

Este artigo descreve como manipular certificados de handshake mTLS de mesmo nível extraindo o X.509 certificado do cliente.

Exigir certificados de cliente

Use as seguintes etapas para configurar seu aplicativo de contêiner para exigir certificados de cliente:

  1. Abra seu aplicativo de contêiner no portal do Azure.
  2. Em Configurações, selecione Ingresso.
  3. Selecione a opção Ativado.
  4. Para tipo de entrada, selecione HTTP.
  5. Em Modo de certificado de cliente, selecione Exigir.
  6. Selecione Guardar para aplicar as alterações.

Para obter mais informações sobre como configurar a autenticação de certificado de cliente em Aplicativos de Contêiner do Azure, consulte Configurar autenticação de certificado de cliente em Aplicativos de Contêiner do Azure.

Extrair certificados X.509

Para extrair X.509 certificados do X-Forwarded-Client-Cert cabeçalho, analise o valor do cabeçalho no código do aplicativo. Esse cabeçalho contém as informações do certificado do cliente quando o mTLS está habilitado. Os certificados são fornecidos em um formato de lista separada por ponto-e-vírgula, que inclui o hash, o certificado e a cadeia.

Aqui está o procedimento que você deseja seguir para extrair e analisar o certificado em seu aplicativo:

  1. Recupere o X-Forwarded-Client-Cert cabeçalho da solicitação de entrada.
  2. Analise o valor do cabeçalho para extrair os detalhes do certificado.
  3. Coloque os certificados analisados no atributo de certificado padrão para validação ou uso posterior.

Uma vez analisados, você pode validar certificados e usá-los de acordo com as necessidades do seu aplicativo.

Exemplo

Em aplicativos Java, você pode usar o filtro de autenticação X.509 reativo para mapear as informações do usuário de certificados para o contexto de segurança. Para obter um exemplo completo de um aplicativo Java com mTLS em Aplicativos de Contêiner do Azure, consulte Aplicativo de Servidor mTLS em Aplicativos de Contêiner do Azure.