Segurança é assunto sério! Você tem se preocupado com a segurança de suas APIs?
Quando se trata de APIs contruídas com Express.js, 1 passo simples pode ajudar você a aumentar o nível de segurança do seu sistema: a biblioteca Helmet.
Quem é Helmet?
Helmet é uma biblioteca para Express.js que agrega 12 middlewares simples, responsáveis por setar alguns headers nas respostas HTTP.
Vamos fazer um exemplo simples logo a seguir:
Exemplo simples
$ mkdir my-api
$ cd my-api
$ npm init -y
$ npm install express --save
Crie um arquivo index.js
:
const express = require('express')
const app = express()
app.get('/', (request, response) => {
return response.json({
api: 'live'
})
})
app.listen(3000)
Inicie o servidor:
$ node index.js
Perceba os headers retornados pela requisição sem o uso do helmet:
Vamos incluir o helmet em nossa API. Primeiro, faça a instalação do package:
$ npm install helmet --save
Importe e inclua no app express da seguinte forma:
const express = require('express')
const helmet = require('helmet')
const app = express()
app.use(helmet())
app.get('/', (request, response) => {
return response.json({
api: 'live'
})
})
app.listen(3000)
Reinicie o servidor:
$ node index.js
Conheça os novos headers setados pelo helmet:
Esses headers adicionam o nível a mais de segurança em sua API. Como por exemplo o Strict-Transport-Security
, que permite que um site informe aos navegadores que ele deve ser acessado apenas por HTTPS, em vez de usar HTTP.
Alguns middlewares vêm ativados por padrão, outros não. Saiba mais em https://helmetjs.github.io/
Até a próxima!
Top comments (1)
show!! 💪🤘😀