Histórico de mensagens sobre mtls em dúvidas

EXIBINDO CONVERSAS RECENTES:

Texto: mtls
Canal: dúvidas
Avatar discord do usuario palloma_efi

palloma_efi

Ver Respostas

Bom dia @uxpedro ! Essa falha ocorre porque você passou o atributo validateMtls como false mas não configurou o mTLS no seu servidor. https://dev.efipay.com.br/docs/api-pix/webhooks#entendendo-o-padr%C3%A3o-mtls

Avatar discord do usuario uxpedro

uxpedro

Ver Respostas

Bom dia !!!

ao tentar criar um web hook, driblando o mtls uso o seguinte código:

e recebo o erro:

{
"nome": "webhook_invalido",
"mensagem": "A autenticação de TLS mútuo não está configurada na URL informada"
}
imagem enviada na mensagem pelo usuario uxpedro

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @kaftao. Tudo bem?
Você realizou a configuração do mTLS em seu servidor? Se não, desmarque o campo "Validar mTLS" e tente novamente.
Verifique também se a chave Pix que está inserindo é válida:
Telefone será +55 DDD e o número, exemplo: +5531988887777
CPF ou CNPJ somente os números.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

A utilização do mTLS só não é uma opção em homologação. Em produção o manual de segurança do Pix é muito claro em informar que é exigido.

Avatar discord do usuario guilherme_efi

guilherme_efi

@adilalima, como vai?
Na SDK o parâmetro 'x-skip-mtls-checking' deve ser passado no array 'headers'. Assim:

php
$webhook = EfiPay::getInstance([
'client_id' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_CLIENT_ID : CONF_EFI_CLIENT_ID,
'client_secret' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_CLIENT_SECRET : CONF_EFI_CLIENT_SECRET,
'certificate' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_PIX_CERTIFICATE : CONF_EFI_PIX_CERTIFICATE,
'headers' => ['x-skip-mtls-checking' => "true"],
]);

Avatar discord do usuario adilalima

adilalima

Opa, tudo ótimo e contigo?
Então, mesmo seguindo esse guia e fazendo (supostamente) igual acabo recebendo o mesmo erro de código 400 e de descrição "A autenticação de TLS mútuo não está configurada na URL informada":

public function config_webhook(array $data): void
{
$webhook = EfiPay::getInstance([
'client_id' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_CLIENT_ID : CONF_EFI_CLIENT_ID,
'client_secret' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_CLIENT_SECRET : CONF_EFI_CLIENT_SECRET,
'certificate' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_PIX_CERTIFICATE : CONF_EFI_PIX_CERTIFICATE,
'x-skip-mtls-checking' => "true",
]);

$webhook = $webhook->pixConfigWebhook(
['chave' => CONF_EFI_PIX_KEY],
['webhookUrl' => CONF_EFI_PIX_WEBHOOK_URL]
);

$this->call(code: 200)->back(['data' => $data, 'headers' => $this->headers, 'webhook' => $webhook]);
}

É um comportamento esperado?

Avatar discord do usuario joaolucas_efi

joaolucas_efi

Ver Respostas

Bom dia @adilalima, tudo bem?
Dê uma olhada em nosso exemplo da SDK que mostra como enviar o atributo "x-skip-mtls-checking" na instância da classe EfiPay.

Avatar discord do usuario adilalima

adilalima

Ver Respostas

Bom dia, estou recebendo a seguinte resposta ao tentar configurar um webhook:

"webhook": {
"success": false,
"error": "webhook_invalido",
"code": 400,
"message": "A autenticação de TLS mútuo não está configurada na URL informada",
"errorDescription": "A autenticação de TLS mútuo não está configurada na URL informada"
}

Apesar de enviar a opção 'x-skip-mtls-checking' => true na instância de EfiPay em uma API PHP8.

Entendi algo errado? A utilização do mTLS não é uma opção, infelizmente.

Agradeço 🙂

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @douglasalves_27133! Sim, você primeiro você consome o endpoint DELETE /v2/webhook/:chave para desvincular sua URL no ambiente de homologação.
Depois, você deve alterar a chave pública do mTLS nas configurações do seu servidor para a de produção. Em seguida, você deve usar o endpoint PUT /v2/webhook/:chave com a chave pública do mTLS de produção e associar sua URL ao ambiente de produção.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

O certificado raiz para o mTLS é diferente.

Avatar discord do usuario douglasalves_27133

douglasalves_27133

Ver Respostas

Então a configuração no apache ficaria desta forma ( mTLS Efí
SSLVerifyClient none
SSLProtocol TLSv1.2


SSLVerifyClient require
SSLVerifyDepth 3


# Tratando o /webhook

Alias "/webhook/" "/var/www/webhook/index.py"
Alias "/webhook" "/var/www/webhook/index.py")

Avatar discord do usuario pereira_tk

pereira_tk

Ver Respostas

tou com esse erro. ja refiz as aplicação do mTLS varias vezes. Conforme aqui
imagem enviada na mensagem pelo usuario pereira_tk

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

O mTLS só é requisito para o webhook. Então não usar webhook endereça isso... agora, não usar significa que você vai ficar martelando o servidor da Efí.

Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

O mTLs não é obrigatório, mas recomendado.
Se a sua hospedagem não permitir a configuração mtls, você pode usar o recurso de hash, conforme mostra em nossa documentação: https://dev.efipay.com.br/docs/api-pix/webhooks#exemplos-de-configura%C3%A7%C3%B5es-de-servidor

Avatar discord do usuario _luisth

_luisth

Ver Respostas

Já criei minha API em node, está funcionando perfeitamente em ambiente local, mas quero subir para uma hospedagem. Minha duvida é a seguinte, para subir uma API pix para uma hospedagem é necessario fazer o mTLS?

Avatar discord do usuario _luisth

_luisth

Ver Respostas

Boa tarde! Estou com duvidas a respeito do mTLS

Avatar discord do usuario stdk8352

stdk8352

Ver Respostas

sim, como mtls

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Pode ser usado também, mas o manual de segurança do Pix define o mTLS como obrigatório. Além do mTLS ter algo a mais é sempre bem-vindo.

Avatar discord do usuario stdk8352

stdk8352

Ver Respostas

não daria pra usar esse método em conjunto do mtls ?
imagem enviada na mensagem pelo usuario stdk8352