node package manager
Stop wasting time. Easily manage code sharing in your team. Create a free org »

passport-hawk

Passport.js stategy for the Hawk authentication scheme.

Build Status

This module allows you to use Hawk as an authentication strategy with passport.

Installation

npm install passport-hawk

Usage

var HawkStrategy = require('passport-hawk');
 
passport.use('my-hawk-strategy', new HawkStrategy(function (id, done) {
  Users.findById(id, function (err, user){
    if(err) return done(err);
    done(null, {
      key:   user.secret,
      algorithm: 'sha256', // sha1 or sha256 
      user:  user
    });
  });
}));

then you can set my-hawk-strategy as a middlware in any route. For instance:

  myExpressApp.use('/api', 
   passport.authenticate('my-hawk-strategy', { session: false }));

Bewit support

passport-hawk can be used to validate bewit:

var HawkStrategy = require('passport-hawk');
 
passport.use('my-hawk-strategy', new HawkStrategy({ bewit: true }, function (id, done) {
  //..same as previous section 
});

License

MIT