Como que vai verificar o certificado, se o skip-mtls vai estar ativado? 🤔
Parâmetro ".headers['x-skip-mtls-checking']", deve ser igual a um dos valores predefinidos
Alguém saberia me dizer como resolver isso?
Todos os concorrentes da Efí que analisamos que seguiam a API Pix padrão do BACEN tem webhook com mTLS... vários inclusive que requerem certificado ICP-Brasil no webhook, o que é tremendamente não prático. A Efí emite os certificados com CA dela o que é bem simples de usar.
Vou utilizar a EFI por conta do SDK e documentação que é maravilhosa, mas a questão do WEBHOOK do pix é realmente uma pedra no sapato, não tem nenhum concorrente da EFI que eu tenha conhecimento que utilize mtls, pra implementar isso no meu sistema eu vou ter que mudar toda a estrutura do meu servidor aumento muito o nivel de complexidade para simplesmente receber a confirmação do recebimento. Pensei varias vezes em mudar para outra plataforma por causa disso. Para não ter que fazer a configuração do mtls estou pensando em validar de outra maneira atraves das chamadas mesmo. Assim que o usuario atualizar a tela ou entrar fazer a chamada para verificar. Isso deixa a desejar muito.
Olá, @diogo.f.m.7 e @rubenskuhl. Bom dia!
Gostaríamos de esclarecer que, conforme as normas do Banco Central, as notificações enviadas do PSP recebedor (no caso, a Efí) para o usuário recebedor trafegam utilizando o canal mTLS. Como parte desse protocolo, sempre enviamos o certificado nos webhooks, seja no cadastro ou na notificação de Pix.
Entendemos que em alguns cenários, como hospedagem em servidores compartilhados, pode haver restrições em relação à inserção de certificados. Por isso, disponibilizamos a opção skip mTLS, que permite o cadastro do webhook sem a necessidade do hand shake mTLS por parte do integrador. É importante destacar que, ao optar por utilizar o atributo skip mTLS, o integrador fica responsável por validar o nosso certificado, conforme as orientações que fornecemos.
Ressaltamos que sempre seguimos as diretrizes do Banco Central para garantir a segurança e conformidade de nossos serviços. 🧡
Esse tipo de argumento foi passado para o BACEN, está no histórico do Github do BACEN. Mas não aceitaram, e o padrão é com mTLS. Notar que o webhook do Pix tem mais informações do que só um transaction ID, então isso pode ter colaborado para essa exigência. Ou por homogeneidade com o OpenFinance.
Até pq, uma opinião minha agr...
O webhook é o ponto "menos importante" pq a transação já aconteceu...
Uma forma de segurança q eu uso, pq vem da época de webhook q não tinha mtls, q é o caso do cartão e boleto, é quando recebo um webhook, não confiar nele, pego o id da transação e eu faço a consulta a api para validar o status...
Não, não verificar não impede de você checar mTLS do seu lado.
Se eles não verificam, não tem mtls... Deixar para o cliente validar o certificado, é passar uma responsabilidade para o cliente, q na vdd deveria se da EFI como PSP... Pq quem assina contrato aceitando as regras é o psp e não o cliente final...
Não pq tem como implementar mTLS mesmo sem fechar mTLS na sessão TLS. O servidor web pode repassar para a aplicação o certificado de quem chamou o HTTP, e a aplicação verificar mTLS. Então desligar o teste só abre possibilidade para esse cenário.
Troque para skip-mtls-check. Essa opção não desliga o mTLS, desliga a verificação que eles fazem.
Até pq, na própria doc eles falam da hospedagem compartilhada, pq eles sabem que não dá para configurar o mtls...
Mas eu deixei bem claro a minha pergunta... "Posso utilizar do skip-mtls em produção?"
Se eles escreverem algo que diga que eles permitem, seria basicamente batom na cueca. Por isso em outras oportunidades eles disseram que o certificado é sempre enviado, então até aonde eles tem conhecimento, o mTLS deve estar sendo seguido. Tem no histórico do canal isso.
@igor_efi @elaine2983, podem dar uma orientação sobre esse assunto?? Em produção, usando hospedagem compartilhada, posso usar o skip-mtls, e validar o webhook pelo IP de origem??
Por acaso eu estava falando com um PSP esta semana, e eles implementam sim mTLS.
Pode denunciar todos então... Só conheço a EFI q usa o mtls...
Não tem opção de desabilitar o mTLS... tanto que eles sempre manda o certificado origem. A opção que tem é de desabilitar a checagem de se você implementou mTLS corretamente.
Se fosse assim, o BC removeria todos os Gateways, e manteria apenas a EFI, pq é a única que usa o mtls....