{"_id":"2max-express-authenticate","_rev":"7-4ec2a22c8f25b56b00dbff008e3f2ffc","name":"2max-express-authenticate","description":"Simply authentication for express based on Sequelize.","dist-tags":{"latest":"0.0.122"},"versions":{"0.0.1":{"name":"2max-express-authenticate","version":"0.0.1","description":"Simply authentication for express based on Sequelize.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git@gitlab.deuxmax.fr:2Max/express-authenticate.git"},"author":{"name":"Maxime Maillet","email":"maxime.maillet93@gmail.com"},"license":"ISC","dependencies":{"bcrypt":"^1.0.3","body-parser":"^1.18.2","cookie-parser":"^1.4.3","express":"^4.16.2","express-session":"^1.15.6","sequelize":"^4.28.5"},"gitHead":"4756c36ce2e952303803815e39c1c3d042be60f2","_id":"2max-express-authenticate@0.0.1","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"2max","email":"maxime.maillet93@gmail.com"},"dist":{"integrity":"sha512-iMcFAdoibxOkqlzMlzz/TXrvLYhtmJW/pF5pgrkIrif914p9EjcdFFVqBlTn340LcA/XKOzBjxpcIgEIKxm5qQ==","shasum":"4da5ea8f2c4fcb3f8c0b1e2ce65613278e1a11e8","tarball":"https://registry.npmjs.org/2max-express-authenticate/-/2max-express-authenticate-0.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDauitxiRkDKRHk053U1BFw7kDaqBUiQ2pB977KH3TuWgIhAIJo2itNBV1BqOvR98QWuVChacBWVevQLEfI25W7IUHs"}]},"maintainers":[{"name":"2max","email":"maxime.maillet93@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/2max-express-authenticate-0.0.1.tgz_1513554435089_0.7443109413143247"}},"0.0.11":{"name":"2max-express-authenticate","version":"0.0.11","description":"Simply authentication for express based on Sequelize.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git@gitlab.deuxmax.fr:2Max/express-authenticate.git"},"author":{"name":"Maxime Maillet","email":"maxime.maillet93@gmail.com"},"license":"ISC","dependencies":{"bcrypt":"^1.0.3","body-parser":"^1.18.2","commander":"^2.12.2","cookie-parser":"^1.4.3","express":"^4.16.2","express-session":"^1.15.6","inquirer":"^4.0.1","sequelize":"^4.28.5"},"bin":{"roles":"./bin/roles.js"},"gitHead":"8c601877821f377bee110a86a2023ec85a25947a","_id":"2max-express-authenticate@0.0.11","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"2max","email":"maxime.maillet93@gmail.com"},"dist":{"integrity":"sha512-0ZsEuUi9fzthtnxe8ssNVgASweUURmDH4G3PAjrJz1fi5HgAAlNUaQysDoLImFgD5G5QrvVm0MSgNBOevM3oMg==","shasum":"0e357ea6abca1c06e862f074f229edc0822cd855","tarball":"https://registry.npmjs.org/2max-express-authenticate/-/2max-express-authenticate-0.0.11.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEqqM1hMoh2AwIN2fiQsqSpcnH472wsIdJJHbgvzTt3pAiB3w10kXyWfM7kSQixgwoNpAEzbz2s0HbKycuIRjuuO9Q=="}]},"maintainers":[{"name":"2max","email":"maxime.maillet93@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/2max-express-authenticate-0.0.11.tgz_1513959660380_0.6513771670870483"}},"0.0.12":{"name":"2max-express-authenticate","version":"0.0.12","description":"Simply authentication for express based on Sequelize.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git@gitlab.deuxmax.fr:2Max/express-authenticate.git"},"author":{"name":"Maxime Maillet","email":"maxime.maillet93@gmail.com"},"license":"ISC","dependencies":{"bcrypt":"^1.0.3","body-parser":"^1.18.2","commander":"^2.12.2","cookie-parser":"^1.4.3","express":"^4.16.2","express-session":"^1.15.6","inquirer":"^4.0.1","sequelize":"^4.28.5"},"bin":{"roles":"./bin/roles.js"},"gitHead":"23ad81ad1d9f506bda3971c0dfa590b6b97b2049","_id":"2max-express-authenticate@0.0.12","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"2max","email":"maxime.maillet93@gmail.com"},"dist":{"integrity":"sha512-ZyD+XGUGl1Hi/Wfj60ryZgqe6a0RaL4vqiVrqnXRNUwvYtMUYtRQpUVPo3+xWxoHJUvfmP1QX5XI83yXtlmthg==","shasum":"72fd4d7607061f6514cf6d02f046555590f1fc66","tarball":"https://registry.npmjs.org/2max-express-authenticate/-/2max-express-authenticate-0.0.12.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCIT71COjTyZxYvmslU1m1VLqJT8ctTTD13Ihl41IR/ZAIgS12ODP8E//GW7Qj1E6amTKkelwdrzGOmWrv15uIZtyc="}]},"maintainers":[{"name":"2max","email":"maxime.maillet93@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/2max-express-authenticate-0.0.12.tgz_1514195383669_0.8095266087912023"}},"0.0.121":{"name":"2max-express-authenticate","version":"0.0.121","description":"Simply authentication for express based on Sequelize.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"https://gitlab.deuxmax.fr/2Max/express-authenticate"},"author":{"name":"Maxime Maillet","email":"maxime.maillet93@gmail.com"},"license":"ISC","dependencies":{"bcrypt":"^1.0.3","body-parser":"^1.18.2","commander":"^2.12.2","cookie-parser":"^1.4.3","express":"^4.16.2","express-session":"^1.15.6","inquirer":"^4.0.1","sequelize":"^4.28.5"},"bin":{"roles":"./bin/roles.js"},"gitHead":"23ad81ad1d9f506bda3971c0dfa590b6b97b2049","_id":"2max-express-authenticate@0.0.121","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"2max","email":"maxime.maillet93@gmail.com"},"dist":{"integrity":"sha512-6nG0BnPyK4aOXK/ARhS3jujocjJbCu0Qwi69VH4Q5vWGuY1YwSh+V5aLbsSgb6mMBWzkvEaKtghpFv9of3wJjQ==","shasum":"59b4c09121e9e0b29b2c06229f3cc9eb7e55c834","tarball":"https://registry.npmjs.org/2max-express-authenticate/-/2max-express-authenticate-0.0.121.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAUT4sWpfIImGj4AU4msEOWmCAimtv2bgN9TI4eNJuD3AiEAnmIeTwOpMre3hfTtUTJJSTk0dP88bq/r9bo0yCmB6gQ="}]},"maintainers":[{"name":"2max","email":"maxime.maillet93@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/2max-express-authenticate-0.0.121.tgz_1514199235258_0.14520875038579106"}},"0.0.122":{"name":"2max-express-authenticate","version":"0.0.122","description":"Simply authentication for express based on Sequelize.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"https://gitlab.deuxmax.fr/2Max/express-authenticate"},"author":{"name":"Maxime Maillet","email":"maxime.maillet93@gmail.com"},"license":"ISC","dependencies":{"bcrypt":"^1.0.3","body-parser":"^1.18.2","commander":"^2.12.2","cookie-parser":"^1.4.3","express":"^4.16.2","express-session":"^1.15.6","inquirer":"^4.0.1","sequelize":"^4.28.5"},"bin":{"roles":"./bin/roles.js"},"gitHead":"fb6376a304dbb795a44f8dfc16468dc74d564c2a","_id":"2max-express-authenticate@0.0.122","_shasum":"a2ba03a3fe88eefdaf73c3584d1f078423ffe7f7","_from":".","_npmVersion":"3.3.6","_nodeVersion":"5.0.0","_npmUser":{"name":"2max","email":"maxime.maillet93@gmail.com"},"dist":{"shasum":"a2ba03a3fe88eefdaf73c3584d1f078423ffe7f7","tarball":"https://registry.npmjs.org/2max-express-authenticate/-/2max-express-authenticate-0.0.122.tgz","integrity":"sha512-Apd1ac2T2swGMi44ypMc0H1o55CrNWraahcHheJWlrlHp47GyJaplYxaa18orlu/wCqaMblKTIbzNLCYHnGSzw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrSA2Hhwk+o1z72RLkThrIuVE5gU1YoYasq2JhhDkk6QIhAMsassnwAGkHtzsvd14XFkw45lFpTrYd/AQDY8ZEVvYJ"}]},"maintainers":[{"name":"2max","email":"maxime.maillet93@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/2max-express-authenticate-0.0.122.tgz_1514232733203_0.9224450881592929"}}},"readme":"# Express authenticate\n\nSimply authentication for express based on Sequelize.\n\n## Install\n\n```bash\nnpm i 2max-express-authenticate --save\n```\n\n## Configuration\n\n```js\nconst express = require('express');\nconst app = express();\nconst auth = require('2max-express-authenticate');\n\nasync function main(app) {\n  // Declare auth + configure for persistence\n  const util = await auth(app, {\n    'persistence': {\n      'host': process.env.MYSQL_HOST,\n      'user': process.env.MYSQL_USER,\n      'password': process.env.MYSQL_PASSWORD,\n      'database': process.env.MYSQL_DATABASE,\n      'dialect': 'mysql'\n    }\n  });\n\n  // Secure yours routes with auth\n  util.secure([\n    '/admin',\n    '/dashboard',\n    ...\n  ]);\n\n  // Override connection method for send custom results\n  util.override({\n    'login': (req, res) => {\n      res.send('Congrats');\n     },\n     'logout': (req, res) => {\n       res.send('OUT');\n     },\n     'signup': (req, res) => {\n       res.send('Good job mother fucker men');\n     }\n  });\n}\n\napp.listen(80);\n```\n\n## Route\n\n| Method | endpoint | Body |\n| --- | --- | --- |\n| POST | /signup | {username, password} |\n| POST | /login | {username, password} |\n| GET | /logout | N/A |\n\n\n### Features\n\n* Crypt password with [bcrypt](https://github.com/kelektiv/node.bcrypt.js)\n* Login, logout and signup (cookies + session)\n* Persist data (according to sequelize compatibility)\n* Give array with route to check session for each route\n* Enable middlewares for set response from /login, /logout and /signup\n\n### Todo\n\n* Add roles checking (bitmask)\n* Secure route according to roles\n* User can add role","maintainers":[{"name":"2max","email":"maxime.maillet93@gmail.com"}],"time":{"modified":"2022-06-12T14:07:00.435Z","created":"2017-12-17T23:47:15.947Z","0.0.1":"2017-12-17T23:47:15.947Z","0.0.11":"2017-12-22T16:21:01.226Z","0.0.12":"2017-12-25T09:49:44.814Z","0.0.121":"2017-12-25T10:53:56.157Z","0.0.122":"2017-12-25T20:12:14.123Z"},"repository":{"type":"git","url":"https://gitlab.deuxmax.fr/2Max/express-authenticate"},"author":{"name":"Maxime Maillet","email":"maxime.maillet93@gmail.com"},"license":"ISC","readmeFilename":"README.md"}