@matteo.collina/users-pg
v3.0.0
Published
Manage Users as a module, with node and postgres
Downloads
8
Readme
users-pg
Manage Users, with node and postgres
Install
npm install @matteo.collina/users-pg --save
API
- buildUsers()
- users.put()
- users.get()
- users.authenticate()
- users.createSchema()
- users.dropSchema()
buildusers(connectionString)
The factory for the users module, you can just pass through a pg connection string.
Example:
var connString = 'postgres://localhost/users_tests'
var users = require('@matteo.collina/users-pg')(connString)
users.put(object, callback(err, user))
Adds or updates an user. An user can have three properties:
- the
'id'
, which needs to be set only for existing users - the
'username'
- the
'status'
, which can be any of'wait'
,'operational'
and'error'
.
Validation is provided by Joi, and a Joi error object will be provided in case of validation errors.
The returned user includes the id
, if missing.
users.get(id, callback(err, user))
Fetches an users, returns a
boom.notFound
if not present.
users.authenticate(user, callback(err, result, user))
Fetches a user, hashes the password with the stored salt and matches it
against the database. result
is true
if the match is successful,
false
otherwise.
Returns boom.notFound
if not present.
users.createSchema(callback(err))
Create the schema in PostgreSQL for this module.
users.dropSchema(callback(err))
Drop the schema in PostgreSQL for this module.
License
MIT