Histórico de mensagens sobre mtls

EXIBINDO CONVERSAS RECENTES:

Texto: mtls
# pix
Avatar discord do usuario cantinhotattoo

cantinhotattoo

Ver Respostas

Oi bom dia Palloma, tenho sim, eu recebia as notificações muito tempo agora deixei de receber, mas não tinha configurado o certificado mtls

# pix
Avatar discord do usuario clusterweb

clusterweb

Ver Respostas

boa noite, voces tem algum tutorial de como implementar o mTLS quando o dominio é hospedado na CloudFlare

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

mTLS é requisito do Banco Central, então se o Banco Central aposentar o TLS 1.2 e seu webhook não funcionar em TLS 1.3, vai ser problema seu resolver...

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Não lembro de alguém já ter comentado de sucesso no Heroku... e se não tiver algo para suportar mTLS com CA privada, não vai rolar. Talvez usar algo como o pix.ae seja uma alternativa.

Pra quem tem dificuldades de implementar os webhooks por falta de suporte em hospedagem compartilhada para configurar mTLS, o Pix.ae agora oferece proxy de callbacks com mTLS.

Pra usar é muito simples: é só prefixar o seu domínio com mtls.pix.ae/. Por exemplo:

Para: https://exemplo.com.br/webhookpix
Use: https://mtls.pix.ae/exemplo.com.br/webhookpix

Obs: no ambiente de homologação, prefixe com mtls-h.pix.ae/

# pix
Avatar discord do usuario felipetkful

felipetkful

ES´TA CONFIGURADO ASSIM, ATÉ POUCO TEMPO ESTAVA FUNCIONANDO PARA UM OUTRO ENDPOINT, AGIORA ESTOU FAZENDO PARA OUTRA APLICAÇÃO E SÓ RETORNA O ERRO DE MTLS MUTO
imagem enviada na mensagem pelo usuario felipetkful

# pix
Avatar discord do usuario .arielson

.arielson

Ver Respostas

A quem interessar, resolvi o problema utilizando a configuração através do método do SDK PixConfigWebhook
passando o cabeçalho: var headers = "{\"x-skip-mtls-checking\": \"true\", \"Content-Type\": \"application/json\"}";

Testado e validado em produção 👌

# pix
Avatar discord do usuario Inaldo Marinho

Inaldo Marinho

<@!944203134622920724> pior que ainda não fiz a configuração do mTLS necessário para utilziar o webhook

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Pra quem tem dificuldades de implementar os webhooks por falta de suporte em hospedagem compartilhada para configurar mTLS, o Pix.ae agora oferece proxy de callbacks com mTLS.

Pra usar é muito simples: é só prefixar o seu domínio com mtls.pix.ae/. Por exemplo:

Para: https://exemplo.com.br/webhookpix
Use: https://mtls.pix.ae/exemplo.com.br/webhookpix

Obs: no ambiente de homologação, prefixe com mtls-h.pix.ae/

# pix
Avatar discord do usuario nicolaujr.

nicolaujr.

desativei o mTLS no nginx e testei novamente

# pix
Avatar discord do usuario nicolaujr.

nicolaujr.

tenho um nginx proxy, fazendo o meio campo do mTLS

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Você precisa criar uma área no seu site onde só entra com o mTLS. É isso que essa parte da config faz.

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

requestCert tem que ser true, rejectUnauthorized false.

const express = require("express");
const fs = require("fs");
const https = require("https");
var logger = require('morgan');

const httpsOptions = {
cert: fs.readFileSync(""), // Certificado fullchain do dominio
key: fs.readFileSync("/"), // Chave privada do domínio
ca: fs.readFileSync(""), // Certificado público da Gerencianet
minVersion: "TLSv1.2",
requestCert: true,
rejectUnauthorized: false, //Mantenha como false para que os demais endpoints da API não rejeitem requisições sem MTLS
};

const app = express();
const httpsServer = https.createServer(httpsOptions, app);
const PORT = 443;

app.use(logger('dev')); // Comente essa linha caso não queira que seja exibido o log do servidor no seu console
app.use(express.json());
app.use(express.urlencoded({ extended: false }));

// Endpoint para configuração do webhook, você precisa cadastrar https://SEUDOMINIO.com/webhook
app.post("/webhook", (request, response) => {
// Verifica se a requisição que chegou nesse endpoint foi autorizada
if (request.socket.authorized) {
response.status(200).end();
} else {
response.status(401).end();
}
});

// Endpoind para recepção do webhook tratando o /pix
app.post("/webhook/pix", (request, response) => {
if (request.socket.authorized){
//Seu código tratando a callback
/ EXEMPLO:
var body = request.body;
filePath = __dirname + "/data.json";
fs.appendFile(filePath, JSON.stringify(body) + "\n", function (err) {
if (err) {
console.log(err);
} else {
response.status(200).end();
}
})
/
response.status(200).end();
}else{
response.status(401).end();
}
});

httpsServer.listen(PORT, () =>
console.log(Express server currently running on port ${PORT})
);

# pix
Avatar discord do usuario renato.barbosa.

renato.barbosa.

Ver Respostas

depois que inicio o server com o https.createServer, ele exige autenticação mtls em todas as rotas. mas há rotas que não são de integração com a gerencianet
e mesmo utilizando dos parametros requestCert e rejectUnauthorized como false, ainda tenho as demais rotas exigindo mtls

# pix
Avatar discord do usuario renato.barbosa.

renato.barbosa.

Bom dia pessoal. Estou tentando fazer a integração pix utilizando o certificado mtls em uma das rotas no node, mas estou tomando block em todas. Teriam um exemplo de código com autenticação mtls apenas no webhook?

# cartões
Avatar discord do usuario tiagobogoni

tiagobogoni

Ver Respostas

Um dúvida sobre notificações
fiz a implementação para pagamento via cartão agora quero implementar a parte de receber esse pagamento. Tenho que colocar algum tipo de validação (mtls) igual ao pix? ou qual processo de validação tem que ser feito

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Então o que já apareceu aqui de alternativa com Cloudflare foi:
1) Criar uma entrada DNS específica para o webhook que não passa pelo proxy da CF, checando mTLS no servidor diretamente
2) Usar o Cloudflare Teams Enterprise, que tem mTLS com CA privada, que só custaria ter 1 usuário e poderia ser acessível.

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Pq a Cloudflare só suporta mTLS com CA Privada nas famílias Enterprise dos planos deles.

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Sim, Cloudflare e mTLS não rimam.

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

E você pode também checar se o CN do mTLS é gn-webhook-pix