Skip to content

About

Webhook Assinado (HMAC): Assina e verifica webhooks próprios no padrão t=,v1= (estilo Stripe) com janela anti-replay e rotação de segredo. Integrações com parceiros sem risco de requisição forjada. Criado por FlowCore Soluções LTDA.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Webhook Assinado (HMAC)

Assina e verifica webhooks próprios no padrão t=,v1= (estilo Stripe) com janela anti-replay e rotação de segredo. Integrações com parceiros sem risco de requisição forjada.

Ver ao vivo, com preview e manual: https://flowcoresolucoes.com.br/codigos/webhook-assinado

Criado por FlowCore Soluções LTDA.

Arquivos

Como instalar

  1. Funciona onde você já roda Node 18+, Cloudflare Workers, Deno, Bun, Vercel e Netlify Functions. Zero dependência: só fetch e Web Crypto, que já vêm no runtime.

  2. Crie src/lib/webhook-hmac.ts Copie o conteúdo de src/webhook-hmac.ts e src/webhook-hmac.test.ts deste repositório.

  3. Use

    const header = await assinarWebhook(corpo, env.WEBHOOK_SECRET);
    // no receptor, com o corpo bruto:
    const r = await verificarWebhook(corpoBruto, req.headers.get("x-signature"), [novo, antigo]);
    if (!r.valido) return new Response(r.motivo, { status: 401 });
  4. Rode o teste junto O arquivo de teste (src/webhook-hmac.test.ts) cobre 8 cenários. Copie para src/lib/ ao lado e rode:

    npm install -D vitest
    npx vitest run src/lib

Testes

src/webhook-hmac.test.ts cobre 8 cenários.

npm install
npm test

Licença

MIT. Pode usar em projeto pessoal ou comercial, de graça. A única condição é manter a linha “Criado por FlowCore Soluções LTDA” (ou o crédito de adaptação) onde ela está.


Precisa disso integrado no seu sistema? A FlowCore desenvolve sob medida.

About

Webhook Assinado (HMAC): Assina e verifica webhooks próprios no padrão t=,v1= (estilo Stripe) com janela anti-replay e rotação de segredo. Integrações com parceiros sem risco de requisição forjada. Criado por FlowCore Soluções LTDA.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages