{"_id":"x-auth","_rev":"10-52e1b218eec5c1c9a702e1a34d7bd2c0","name":"x-auth","description":"NodeJS authorization module","dist-tags":{"latest":"0.0.4"},"versions":{"0.0.1":{"name":"x-auth","version":"0.0.1","description":"NodeJS authorization module","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"https://github.com/line23/x-auth.git"},"author":{"name":"Niki Kushlev"},"license":"MIT","bugs":{"url":"https://github.com/line23/x-auth/issues"},"homepage":"https://github.com/line23/x-auth","gitHead":"d5a838ffa2b0f427db4199b94454f7fd3c389c45","_id":"x-auth@0.0.1","_shasum":"a396d3a5a45477b90adaa6fec670ffcc48971904","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"niki","email":"niki.kushlev@gmail.com"},"maintainers":[{"name":"niki","email":"niki.kushlev@gmail.com"}],"dist":{"shasum":"a396d3a5a45477b90adaa6fec670ffcc48971904","tarball":"https://registry.npmjs.org/x-auth/-/x-auth-0.0.1.tgz","integrity":"sha512-b6wm87OZPUu2LlHqxjeDzuoLgP34zHFBDedmVL1pQDU6SSOS+l+Q/g5l9zBmfDVIlGOmBa2y4rF2PVVk4xmpDw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCV4K3BScjdmt3cVYXjuytHo9ghbMZ2C9V4rZRNTBHmPgIhAIxVuLOxDe3q5g3Ypt3eoK9JPZZaFE1UwLCeyn/X51WL"}]}},"0.0.2":{"name":"x-auth","version":"0.0.2","description":"NodeJS authorization module","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"https://github.com/line23/x-auth.git"},"author":{"name":"Niki Kushlev"},"license":"MIT","bugs":{"url":"https://github.com/line23/x-auth/issues"},"homepage":"https://github.com/line23/x-auth","gitHead":"4ad0d747cce6a06f99f6fa724c56f6500502ee5b","_id":"x-auth@0.0.2","_shasum":"997a1f64c64a5b98f6e09313653b44e6cf8d61f7","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"niki","email":"niki.kushlev@gmail.com"},"maintainers":[{"name":"niki","email":"niki.kushlev@gmail.com"}],"dist":{"shasum":"997a1f64c64a5b98f6e09313653b44e6cf8d61f7","tarball":"https://registry.npmjs.org/x-auth/-/x-auth-0.0.2.tgz","integrity":"sha512-bNqTFOm4I5nHwEN7Tts7nMALjwEe48oI9OZ92+Oo+GqgbxEM9BFj9ZSGu5TOROnXfRu3o3uPcuQdYcEbY2vkqw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDgUZqAecSdCWrCD0ksfXB8xJEMy3oItlT8wMGE6eH7+AiEAk6S4/Uyc9xD4VrQxCV0RiF7sCTLyWG481ZcNGSE8E0A="}]}},"0.0.3":{"name":"x-auth","version":"0.0.3","description":"NodeJS authorization module","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"https://github.com/line23/x-auth.git"},"author":{"name":"Niki Kushlev"},"license":"MIT","bugs":{"url":"https://github.com/line23/x-auth/issues"},"homepage":"https://github.com/line23/x-auth","gitHead":"d173c5f3a1e98d0c591330b2b1dd97d149cbbdc6","_id":"x-auth@0.0.3","_shasum":"e9823aafc3dbedcf7898a53d04cfa7f2e4a0a277","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"niki","email":"niki.kushlev@gmail.com"},"maintainers":[{"name":"niki","email":"niki.kushlev@gmail.com"}],"dist":{"shasum":"e9823aafc3dbedcf7898a53d04cfa7f2e4a0a277","tarball":"https://registry.npmjs.org/x-auth/-/x-auth-0.0.3.tgz","integrity":"sha512-e5empuTQAha0IcME+PbKz8ln9+bprtUUKiDNtQ5ESqMvLQcT7mlxi5JOezFI/LI+0AY7R0wIxbCSZfrU8I1obQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpoxKMywRP2dWbysHyQKiX+fhPYsYCo3LmsTKXZBPHbgIhANz+BdFhvLUx8f82yDi7Q+fgWOALrs/3tQJ1NlMOaX7M"}]}},"0.0.4":{"name":"x-auth","version":"0.0.4","description":"NodeJS authorization module","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"https://github.com/line23/x-auth.git"},"author":{"name":"Niki Kushlev"},"license":"MIT","bugs":{"url":"https://github.com/line23/x-auth/issues"},"homepage":"https://github.com/line23/x-auth","gitHead":"84191f7c10f1a4d34efd19fb790fc3fca2b9bf23","_id":"x-auth@0.0.4","_shasum":"9d69c49207c02af4c6bf6aef37dfd68c6756a7e1","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"niki","email":"niki.kushlev@gmail.com"},"maintainers":[{"name":"niki","email":"niki.kushlev@gmail.com"}],"dist":{"shasum":"9d69c49207c02af4c6bf6aef37dfd68c6756a7e1","tarball":"https://registry.npmjs.org/x-auth/-/x-auth-0.0.4.tgz","integrity":"sha512-Rxs+2IdWt9XjHpGpDHn/AORbdAn+EGGZ/MSHoG7wPjNzOJQPvskopRzoyucerTUHVHgtpV7aZp+8TVW2t1PesA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBeVWCRIMSsIO/GQQhYsKql0GRrv3kZnOtBuBSW97ejWAiApuKlDE5CqY/sA5pDNWGNsc8d/vrGCu3PdenQ/NMVR1w=="}]}}},"readme":"### Installation\n\n```\n$ npm install x-auth\n```\n### Usage\n\n```javascript\nvar express = require('express');\nvar router  = express.Router();\nvar XAuth \t= require('x-auth');\n\nvar xAuth = new XAuth({\n    getUserRole: function(req, res){\n    \treturn \"Admin\";\n    },\n    beforeAuthorization: [\n\t\t\t// middleware functions are executed before Authorization function\n\t\t\tfunction(req, res, next){\n\n\t\t\t\tnext();\n\t\t\t},\n\t\t\tfunction(req, res, next){\n\n\t\t\t\tnext();\n\t\t\t}\n    ],\n    onFailureAuthorization: function(req, res){\n\t\t\tres.send(401, 'Unauthorized');\n  \t}\n});\n\n// register roles\nxAuth.register(\"User\");\nxAuth.register(\"Admin\");\n\n// Admin extends User and gets access to everything that User can access.\nxAuth.extend('Admin', 'User');\n\n// User can access 'home' endpoint.\n// Admin extends User, so Admin also has access to 'home' endpoint.\nxAuth.canAccess('User', ['home']);\n\nrouter.use('/theme', require('./controllers/ThemeController')({xAuth: xAuth}).router);\n\nmodule.exports = router;\n```\n\ninside: ./controllers/ThemeController\n\n```javascript\nvar express = require('express');\nvar router  = express.Router();\n\nvar Controller = function(settings){\n\n\trouter.get(\n\t\t'/',\n\t\t// add route endpoint\n\t\tsettings.xAuth.endpoint('home').concat(\n\t\tfunction(req, res) {\n\t\t\t\n\t\t\t\n\t}));\n\t\n\treturn {\n\t\trouter: router\n\t};\n};\n\nmodule.exports = Controller;\n```","maintainers":[{"name":"niki","email":"niki.kushlev@gmail.com"}],"time":{"modified":"2022-06-29T04:31:33.812Z","created":"2014-11-19T18:58:59.972Z","0.0.1":"2014-11-19T18:58:59.972Z","0.0.2":"2014-11-19T19:24:21.168Z","0.0.3":"2014-11-19T19:35:51.188Z","0.0.4":"2014-11-19T19:52:20.038Z"},"homepage":"https://github.com/line23/x-auth","repository":{"type":"git","url":"https://github.com/line23/x-auth.git"},"author":{"name":"Niki Kushlev"},"bugs":{"url":"https://github.com/line23/x-auth/issues"},"license":"MIT","readmeFilename":"README.md"}