Skip to content
This repository has been archived by the owner on Mar 6, 2018. It is now read-only.

auth0/express-brute-mongo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MongoDB store adapter for the express-brute.

Installation

npm install express-brute-mongo

Usage

var ExpressBrute = require('express-brute'),
var MongoStore = require('express-brute-mongo');
var MongoClient = require('mongodb').MongoClient;

var store = new MongoStore(function (ready) {
  MongoClient.connect('mongodb://127.0.0.1:27017/test', function(err, db) {
    if (err) throw err;
    ready(db.collection('bruteforce-store'));
  });
});

var bruteforce = new ExpressBrute(store);

app.post('/auth',
  bruteforce.prevent, // error 403 if we hit this route too often
  function (req, res, next) {
    res.send('Success!');
  }
);

Expire documents

Create an index with expireAfterSeconds: 0 in mongo as follows:

db.my_api_limits_coll.ensureIndex({expires: 1}, {expireAfterSeconds: 0});

Issue Reporting

If you have found a bug or if you have a feature request, please report them at this repository issues section. Please do not report security vulnerabilities on the public GitHub issue tracker. The Responsible Disclosure Program details the procedure for disclosing security issues.

Author

Auth0

License

This project is licensed under the MIT license. See the LICENSE file for more info.

About

MongoDB adapter for the express-brute middleware.

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published