1.3.2 • Published 6 years ago

auth_pg v1.3.2

Weekly downloads
-
License
ISC
Repository
-
Last release
6 years ago

auth_pg

Модуль аутентификации, для nodejs-проекта на pgsql.

Начало работы

Стуктура БД

Для работы модуля необходимы 2 таблицы:

  1. Таблица users должна иметь поля:
    • email
    • id
  2. Таблица users_passwords должна иметь поля email password

    Таблицы должны быть связаны по email.

Документация

$ npm install mysql

Подключение в проекте

const auth = require('auth_pg');

setConfig

Функция принимает 4 параметра:

  • имя бд
  • адрес
  • пароль
  • имя пользователя
/**
 * Конфигурация для коннекта к бд
 */
auth.setConfig('dbName', 'host', 'password', 'userName');

login

Функция принимает на вход с сервера request, response и salt (соль для шифрования). Выставляет аутентификационную куку с именем 'auth'. Вернет 'true' если аутентификация прошла успешно. В противном случае возвращает ошибку.

/**
 * Принимаем данные на логин и пренаправляем в модуль.
 * Здесь 'authtest' - соль для шифрования
 */
.post('/login', function(req, res) {
  auth.login(req, res, 'authtest');
});

logout

Эта функция просто удаляет куку с именем 'auth'.

/**
 * Удаляем аутентификационную куку.
 */
router
.post('/logout', function(req, res) {
  auth.logout(req, res);
});

need

Миддл проверки пользователя на наличие аутентификационной куки. Следующая функция выполнится только если аутентификация прошла успешно.

/**
 * Миддл для проверки аутентифицированности пользователя.
 * Функция за 'auth.need' пройдет только если пользователь аутентифицирован.
 */
router
.post('/isauth', auth.need, function(req, res) {
  console.log('Some your function');
});

register

Функция для регистрации пользователя. Принимает на вход reques, respone и salt (соль для шифрования). Вернет 'true' если регистрация прошла успешно. Иначе вернет ошибку.

/*
 *Функция регистрации пользователя. Здесь 'authtest' это соль. 
 */
router
.post('/register', function(req, res) {
  auth.register(req, res, 'authtest');
});
1.3.2

6 years ago

1.3.1

6 years ago

1.3.0

6 years ago

1.2.6

6 years ago

1.2.5

6 years ago

1.2.4

6 years ago

1.2.3

6 years ago

1.2.2

6 years ago

1.2.1

6 years ago

1.2.0

6 years ago

1.1.7

6 years ago

1.1.6

6 years ago

1.1.5

6 years ago

1.1.4

6 years ago

1.1.3

6 years ago

1.1.2

6 years ago

1.1.1

6 years ago

1.1.0

6 years ago

1.0.0

6 years ago