
Product
Introducing Pull Request Stories to Help Security Teams Track Supply Chain Risks
Socket’s new Pull Request Stories give security teams clear visibility into dependency risks and outcomes across scanned pull requests.
Mudra is a simple authentication and authorisation library for NodeJS that uses MongoDB for storing credentials. (Full Info: https://github.com/baliganikhil/mudra.js)
Mudra is a simple authentication and authorisation library for NodeJS that uses MongoDB for storing credentials.
###Installation
npm install mudra
##Usage
var mudra = require('mudra');
Mudra functions support both callbacks and promises using Q
###Authentication
####Register account
Example using Callback
var params = {username: 'bill.gates@microsoft.com', password: 'microsoft', name: 'Bill Gates'};
mudra.register(params, function(response) {
console.log(response);
});
Example using promises
var params = {username: 'bill.gates@microsoft.com', password: 'microsoft', name: 'Bill Gates'};
mudra.register(params).then(success, error);
function success(response) {
console.log('success: ', response);
}
function error(response) {
console.error('Error: ', response);
}
####Login
var params = {username: 'bill.gates@microsoft.com', password: 'microsoft'};
mudra.login(params, function(response) {
console.log(response);
});
####Authenticate
var params = {username: 'bill.gates@microsoft.com', hash: '$2a$08$4Y7NNgKwZavoT8B.xy6RyuZPXOpxsitDNjq9nSlApRFh/ZAVL3WV2'};
mudra.authenticate(params, function(response) {
console.log(response);
});
####Reset Password
var params = {username: 'bill.gates@microsoft.com', hash: '$2a$08$4Y7NNgKwZavoT8B.xy6RyuZPXOpxsitDNjq9nSlApRFh/ZAVL3WV2', password: 'new_password'};
mudra.reset_password(params, function(response) {
console.log(response);
});
###Authorisation
####Create Role
var params = {role: 'admin'};
mudra.create_role(params, function(response) {
console.log(response);
});
####Update Role (add or remove members)
var params = {role: 'admin', users: [{username: 'bill.gates@microsoft', name: 'Bill Gates'}]};
mudra.update_roles(params, function(callback) {
console.log(response);
});
####Create Permission
var params = {permission: 'cancel_order'};
mudra.create_permission(params, function(response) {
console.log(response);
});
####Update Permission (add or remove roles)
var params = {permission: 'cancel_order', roles: ['admin']};
mudra.update_permission(params, function(callback) {
console.log(response);
});
####Check if user has permission
var params = {username: 'bill.gates@microsoft.com', hash: '$2a$08$4Y7NNgKwZavoT8B.xy6RyuZPXOpxsitDNjq9nSlApRFh/ZAVL3WV2', permission: 'cancel_order'};
mudra.check_permission(params, function(callback) {
console.log(response);
});
###Contexts For example, a project might require readonly privileges given to a certain group but edit privileges given to another group. Admins might get all privileges. You can add permissions by using contexts as follows
var params = {
"permission": "important_project",
"roles": [
"admin"
],
"context": [
{
"read": [
"read_group",
"edit_group"
],
"edit": [
"edit_group"
]
}
]
};
mudra.update_permission(params, function(callback) {
console.log(response);
});
FAQs
Mudra is a simple authentication and authorisation library for NodeJS that uses MongoDB for storing credentials. (Full Info: https://github.com/baliganikhil/mudra.js)
The npm package mudra receives a total of 1 weekly downloads. As such, mudra popularity was classified as not popular.
We found that mudra demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket’s new Pull Request Stories give security teams clear visibility into dependency risks and outcomes across scanned pull requests.
Research
/Security News
npm author Qix’s account was compromised, with malicious versions of popular packages like chalk-template, color-convert, and strip-ansi published.
Research
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.