Skip to content

Comandos úteis

flowingts / csrf

Função: csrf() ​

csrf(opts?): Middleware

Definido em: src/middlewares/csrf.ts:50

Proteção contra CSRF. Use sempre que a autenticação for por cookie.

Métodos que alteram estado (todos menos GET, HEAD e OPTIONS) são recusados com 403 quando vêm de outra origem:

  1. Sec-Fetch-Site: same-origin ou none (navegação do próprio usuário) passa; same-site e cross-site só passam se o Origin estiver em trustedOrigins;
  2. sem Sec-Fetch-Site, o Origin precisa ser a própria origem ou uma confiável;
  3. sem nenhum dos dois, a requisição não veio de um navegador (curl, servidor a servidor) e passa, porque CSRF depende de um navegador que anexe os cookies da vítima.

Com token, além disso, exige o double-submit: o valor do header deve ser igual ao do cookie. Por isso, rotas GET nunca devem alterar estado.

Parâmetros ​

opts? ​

CsrfOptions = {}

Retorna ​

Middleware

Licença ISC.