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:
Sec-Fetch-Site: same-originounone(navegação do próprio usuário) passa;same-siteecross-sitesó passam se oOriginestiver emtrustedOrigins;- sem
Sec-Fetch-Site, oOriginprecisa ser a própria origem ou uma confiável; - 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 = {}