Esta funcionalidade faz parte do produto VTEX Shield. Se já é cliente da VTEX e deseja adotar o VTEX Shield no seu negócio, entre em contato com o Suporte Comercial. É possível que taxas adicionais se apliquem. Se ainda não é cliente, mas tem interesse nesta solução, preencha o formulário de contato.
Em integrações entre sistemas, especialmente quando há troca de informações sensíveis ou controle de operações de negócio, garantir que ambas as pontas da comunicação sejam confiáveis é essencial. O mTLS é uma solução oferecida pelo VTEX Shield que adiciona um nível avançado de segurança às integrações entre sistemas externos e a VTEX.
Conceitos-chave
Antes de entender como o mTLS funciona na prática, é importante relembrar dois conceitos fundamentais de integrações entre sistemas: a arquitetura cliente-servidor e o papel dos certificados digitais.
Arquitetura cliente-servidor
Toda comunicação entre sistemas baseada em APIs segue, em essência, uma arquitetura cliente-servidor. Nessa arquitetura, um sistema (cliente) faz uma requisição, e o outro (servidor) responde. No modelo tradicional (TLS/HTTPS), apenas o servidor apresenta um certificado digital, que é verificado pelo cliente.
Certificados digitais
Um certificado digital é como uma identidade eletrônica que um sistema usa para comprovar sua identidade durante uma conexão. Ele é emitido por uma Autoridade Certificadora (CA), que atua como uma terceira parte confiável que valida identidades digitais.
- O servidor apresenta seu certificado, e o cliente verifica se foi emitido por uma CA confiável.
- No caso do mTLS, o processo é bidirecional: além do servidor, o cliente também apresenta o seu certificado, e o servidor verifica se ele foi emitido pela CA correta.
Essa troca mútua de certificados permite que ambos os lados da comunicação validem a identidade um do outro, aumentando significativamente a segurança da integração.
Funcionamento do mTLS
Em vez de apenas criptografar o tráfego com base na autenticação do servidor (como no protocolo TLS padrão), o mTLS exige que cliente e servidor apresentem certificados digitais válidos.
Com o mTLS, apenas sistemas confiáveis possam se comunicar, reforçando a segurança das integrações e evitando acessos não autorizados. Ou seja, toda comunicação entre o um storefront headless e a VTEX ou entre um ERP e a VTEX, em qualquer direção, é protegida por autenticação mútua e criptografia, impedindo que conexões não autorizadas acessem dados sensíveis ou manipulem as informações trocadas.
O diagrama abaixo representa o fluxo de autenticação mútua utilizando mTLS, no qual cliente e servidor validam suas identidades antes de qualquer troca de dados:

- O cliente inicia a conexão com o servidor.
- O servidor apresenta seu certificado TLS.
- O cliente verifica se o certificado do servidor é válido.
- O cliente, então, apresenta seu próprio certificado TLS.
- O servidor verifica o certificado do cliente.
- Após a verificação mútua, o acesso é concedido.
- A comunicação segue de forma criptografada e segura, com base na confiança estabelecida entre as partes.
Fluxo do mTLS no contexto da VTEX
Entenda a seguir como o fluxo se aplica à comunicação entre os sistemas da VTEX e o os sistemas do lojista. Em alguns casos, a VTEX atua como cliente, e em outros como servidor.
Sentido da requisição | Explicação |
---|---|
Loja headless ou ERP/WMS → VTEX | Quando uma requisição parte da loja para a VTEX, ela é roteada para um proxy mTLS de entrada localizado dentro da nossa VPC. Esse proxy valida o certificado que acompanha a requisição, verificando se foi emitido pela CA da VTEX. Somente após essa validação com sucesso a chamada é encaminhada aos microsserviços internos. |
VTEX → Loja headless ou ERP/WMS | No caso da VTEX enviando uma requisição para a loja, o tráfego passa por um proxy mTLS de saída dentro da nossa VPC, que injeta o certificado emitido pela CA do lojista. Isso permite que o ambiente do lojista verifique a autenticidade da requisição e aceite apenas conexões legítimas e seguras. |
Vantagens
Os principais benefícios do uso do mTLS na VTEX são:
-
Autenticação mútua: cliente e servidor validam a identidade um do outro antes de qualquer troca de dados, impossibilitando tentativas de acesso não verificadas.
-
Criptografia ponta a ponta: todos os dados são criptografados, protegendo informações sensíveis de clientes e detalhes de transações contra interceptações.
-
Integração sem fricção: os lojistas podem integrar o mTLS rapidamente com suas APIs de comércio e aplicações de terceiros, reduzindo complexidade e riscos.
-
Proteção flexível: é possível habilitar mTLS apenas para as integrações desejadas, como provedores de pagamento ou ERPs, adaptando o nível de segurança conforme o caso de uso.
Proteção contra ataques
Ao autenticar ambos os lados da conexão, o mTLS ajuda a prevenir ataques como:
-
Man-in-the-Middle (MitM): também conhecido como “on-path”, ocorre quando agentes maliciosos se posicionam entre o cliente e o servidor para interceptar ou alterar comunicações. Com mTLS habilitado, os atacantes não conseguem se autenticar como cliente ou servidor, tornando esse tipo de ataque praticamente impossível.
-
Chamadas de API maliciosas: o mTLS garante que chamadas de API sejam feitas apenas por usuários legítimos e autenticados. Isso evita que atacantes enviem requisições maliciosas com o objetivo de explorar vulnerabilidades ou manipular o funcionamento da API.
-
Ataques de spoofing: atacantes podem tentar “falsificar” um servidor web para enganar um usuário (ou o contrário). Com a exigência de autenticação por certificados TLS de ambos os lados, esse tipo de ataque se torna muito mais difícil.
-
Credential stuffing: cibercriminosos usam combinações de credenciais vazadas para tentar acessos não autorizados. Sem um certificado TLS emitido legitimamente, ataques de credential stuffing são ineficazes contra organizações que utilizam mTLS.
Requisitos
Como o mTLS é uma proteção para integrações entre sistemas, a ponta oposta à VTEX precisa ser um outro sistema, por exemplo: um middleware que processa o frontend de uma integração headless, ou que processa chamadas para um ERP ou WMS.
Por isso, para utilizar o mTLS, a loja precisa cumprir com pelo menos um dos requisitos a seguir:
-
Operar em um modelo headless, no qual todas as interações com a VTEX são feitas por meio de integrações baseadas em API.
O uso de mTLS não se aplica a implementações com storefront nativo, como Store Framework e Portal CMS Legado.
-
Ter uma ou mais integrações via API com serviços externos (ERPs, WMS, sellers externos etc.).
Requisitos adicionais para integrações com retorno da VTEX
Para qualquer situação em que a VTEX precise enviar requisições de volta ao ambiente do lojista, como em integrações com sellers externos ou fluxos de login, os requisitos a seguir se aplicam:
- O lojista deve possuir uma CA própria. Essa CA é responsável por emitir o certificado que a VTEX apresentará, permitindo que o lojista valide a autenticidade das requisições provenientes da VTEX.
- O servidor do lojista deve estar configurado para exigir ou solicitar o certificado do cliente durante o handshake TLS. Isso normalmente é feito ajustando as configurações de SSL/TLS para habilitar a autenticação mútua. Dessa forma, garante-se que ambos os lados da conexão possam validar suas identidades antes da troca de qualquer dado.
Modalidades de uso
O mTLS pode ser implementado de forma total ou apenas em integrações específicas, oferecendo flexibilidade conforme as necessidades de segurança da loja. Saiba mais a seguir sobre as modalidades disponíveis para contratação.
mTLS com cobertura total
- Proteção abrangente por mTLS para todas as comunicações de entrada e saída entre a VTEX e o servidor de destino do lojista.
- Garante que todas as trocas de dados sejam protegidas por autenticação mútua, assegurando a segurança de cada interação de API em todo o ecossistema.
mTLS por integração específica
- Proteção mTLS apenas em integrações específicas, em vez de uma cobertura total da plataforma.
- Protege conexões selecionadas com serviços externos, como ERPs, WMSs/TMSs, sellers externos e outros sistemas de terceiros.