0.0.1 • Published 8 years ago

passport-worktile v0.0.1

Weekly downloads
1
License
MIT
Repository
github
Last release
8 years ago

Passport-Worktile

Passport strategy for authenticating with Worktile using the OAuth 2.0 API.

Install

$ npm install passport-worktile

Usage

Configure Strategy

The Worktile authentication strategy authenticates users using a Worktile account and OAuth 2.0 tokens. The strategy requires a verify callback, which accepts these credentials and calls done providing a user, as well as options specifying a client ID, client secret, and callback URL.

passport.use(new WorktileStrategy({
    clientID: WORKTILE_CLIENT_ID,
    clientSecret: WORKTILE_CLIENT_SECRET,
    callbackURL: "http://127.0.0.1:3000/auth/worktile/callback"
  },
  function(accessToken, refreshToken, profile, done) {
    User.findOrCreate({ worktileId: profile.id }, function (err, user) {
      return done(err, user);
    });
  }
));

Authenticate Requests

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

For example, as route middleware in an Express application:

app.get('/auth/worktile',
  passport.authenticate('worktile'));

app.get('/auth/worktile/callback',
  passport.authenticate('worktile', { failureRedirect: '/login' }),
  function(req, res) {
    // Successful authentication, redirect home.
    res.redirect('/');
  });

Examples

For a complete, working example, refer to the example.

Tests

$ npm install --dev
$ npm test