Skip to content

nickls/passport-asana

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

passport-asana

Passport Authentication Strategy for Asana's API using OAuth2

Installation

$ npm install passport-asana

Usage

Configure Strategy

The Asana authentication strategy authenticates users using an Asana account and OAuth 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('Asana', new AsanaStrategy({
    clientID: '1234567890123',
    clientSecret: '5ddf23ae77cbe6bff02430f8f37c4900'
    callbackURL: 'https://www.example.com/auth/asana/callback'
  },
  function(accessToken, refreshToken, profile, done) {
    User.findOrCreate({ userId: profile.id }, function (err, user) {
      return done(err, user);
    });
  }
));

Authenticate Requests

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

For example, as route middleware in an Express application:

app.get('/auth/asana', passport.authenticate('Asana', { failureRedirect: '/' }));

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

Credits

Thanks

About

Asana API OAuth2 authentication strategy for Passport

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published