README
NodeJS JWT Authorization
Este projeto provê meios para consumo da autorização JWT da Arquivei
Instalação:
Para detalhes sobre ambiente de desenvolvimento, clique aqui.
npm install @arquivei/jwt-authorization -S
yarn add @arquivei/jwt-authorization
Middlewares
Express
import jwtMiddleware from '@arquivei/jwt-authorization/express';
// ...
app.use(jwtMiddleware(options));
// recuperando info do usuário autorizado
const handler = (req, res) => {
const { account_id } = res.locals.user
}
Koa
import jwtMiddleware from '@arquivei/jwt-authorization/koa';
// ...
app.use(jwtMiddleware(options));
// recuperando info do usuário autorizado
const handler = (context) => {
const { account_id } = context.state.user
}
Socket.io
import jwtMiddleware from '@arquivei/jwt-authorization/socketio';
// ...
io.use(jwtMiddleware(options));
// recuperando info do usuário autorizado
io.use((socket) => {
const { account_id } = socket.data.user;
});
Opções
{
secret: {
// caminho da sua chave publica
path: `${path.resolve(__dirname)}/public.key`, // default
},
// opções opcional, preconfigurado com
jwt: { // este objeto segue a api de opções do https://github.com/auth0/node-jsonwebtoken#readme
algorithms: ['RS256'], // default
},
strategies: { // se necessário sobrescrever funcionamento
loadSecret, // sobrescrever o processo de carregar o `secret`
userFactory, // sobrescrever a criação do usuário
},
logger: console // sobrescrever com o logger da sua applicação
}
Ambiente de Desenvolvimento
É necessário realizar a configuração de acesso ao registro de pacotes NPM para que sejam instaladas nossas dependências privadas.
Com o NPM devidamente configurado, basta executarmos o comando yarn
na raíz do diretório.