1.0.3 • Published 5 years ago

emnuvem-auth v1.0.3

Weekly downloads
1
License
ISC
Repository
-
Last release
5 years ago

EmNuvem Authentication

Módulo de autenticação utilizado nos websystems da EmNuvem.

Instalação

$ npm install emnuvem-auth

Como usar

Configuração

const Authentication = require('emnuvem-auth')

const auth = new Authentication({
   stringKey: 'StringUnica', 
   expiresIn: 60*60, //tempo de expiração do token (em segundos)
   customMessage: { // Opcional - use para personalizar as mensagens de erro
      expiredToken: 'Token expirado',
      invalidToken: 'Token inválido',
      incorrectPassword: 'Senha incorreta'
   }
})

Uso

Você pode encriptar suas senhas facilmente com:

const hash = await auth.encrypt('password')

Caso auth.login tenha sucesso, token será uma string, caso a senha esteja incorreta, token será um objeto com duas chaves "error" e "errorMessage"

// O terceiro argumento é o objeto que será transformado em token
const sessionObject = {name: 'Jefferson'}

const token = await auth.login('password', hash, sessionObject)
if (token.error) {
   return response.status(401).json({
      message: token.errorMessage
   })
}

Caso auth.verifySession tenha sucesso, decoded será o terceiro valor passado para auth.login anteriormente, caso o token seja invalido ou esteja vencido, decoded será um objeto com duas chaves "error" e "errorMessage"

const decoded = await auth.verifySession(token)
if (decoded.error) {
   return response.status(401).json({
      message: decoded.errorMessage
   })
}

constole.log(decoded)
// IMPRIME: {name: 'Jefferson'}