1
0
mirror of https://github.com/verdaccio/verdaccio.git synced 2024-11-13 03:35:52 +01:00
verdaccio/test/functional/plugins/authorize.js

31 lines
733 B
JavaScript
Raw Normal View History

2015-04-11 15:09:19 +02:00
module.exports = Plugin
function Plugin(config, stuff) {
var self = Object.create(Plugin.prototype)
self._config = config
return self
}
// plugin is expected to be compatible with...
2016-11-07 18:15:38 +01:00
Plugin.prototype.verdaccio_version = '1.1.0'
2015-04-11 15:09:19 +02:00
Plugin.prototype.allow_access = function(user, package, cb) {
var self = this
if (!package.handled_by_auth_plugin) {
// delegate to next plugin
return cb(null, false)
}
if (user.name !== self._config.allow_user) {
var err = Error("i don't know anything about you")
err.status = 403
return cb(err)
}
if (package.name !== self._config.to_access) {
var err = Error("you're not allowed here")
err.status = 403
return cb(err)
}
return cb(null, true)
}