passport-provided

1.0.0 • Public • Published

passport-provided

Build Dependencies

Passport strategy for authenticating with a provided username and password.

This module lets you authenticate using a username and password in your Node.js applications. By plugging into Passport, local authentication can be easily and unobtrusively integrated into any application or framework that supports Connect-style middleware, including Express.

Install

$ npm install passport-provided

Usage

Configure Strategy

The provided local authentication strategy authenticates users using a username and password. The strategy requires a verify callback, which accepts these credentials and calls done providing a user.

passport.use(new ProvidedStrategy(
  function(username, password, done) {
    User.findOne({ username: username }, function (err, user) {
      if (err) { return done(err); }
      if (!user) { return done(null, false); }
      if (!user.verifyPassword(password)) { return done(null, false); }
      return done(null, user);
    });
  }
));
Available Options

This strategy takes an optional options hash before the function, e.g. new LocalStrategy({/* options */, callback}).

The available parameters are:

  • username - the username to attempt login with.
  • password - the password to attempt login with.
  • session - use sessions? (default: true)
passport.use(new ProvidedStrategy({
    username: 'TGNThump',
    password: 'passwd',
    session: false
  },
  function(username, password, done) {
    // ...
  }
));

The verify callback can be supplied with the request object by setting the passReqToCallback option to true, and changing callback arguments accordingly.

passport.use(new ProvidedStrategy({
    username: 'TGNThump',
    username: 'passwd',
    passReqToCallback: true,
    session: false
  },
  function(req, username, password, done) {
    // request object is now first argument
    // ...
  }
));

Authenticate Requests

Use passport.authenticate(), specifying the 'local' strategy, to authenticate requests.

For example, as route middleware in an Express application:

app.post('/login', 
  passport.authenticate('local', { failureRedirect: '/login' }),
  function(req, res) {
    res.redirect('/');
  });

Tests

$ npm install
$ npm test

Credits

License

The MIT License

Package Sidebar

Install

npm i passport-provided

Weekly Downloads

0

Version

1.0.0

License

MIT

Unpacked Size

8.23 kB

Total Files

6

Last publish

Collaborators

  • tgnthump