passport-auth0

Auth0 platform authentication strategy for Passport.js

npm install passport-auth0
20 downloads in the last day
84 downloads in the last week
393 downloads in the last month

This is the auth0 authentication strategy for Passport.js.

Instalation

npm install passport-auth0

Configuration

Take your credentials from the settings section in the dashboard and initialize the strategy as follows:

var Auth0Strategy = require('passport-auth0'),
    passport = require('passport');

var strategy = new Auth0Strategy({
   domain:       'your-domain.auth0.com',
   clientID:     'your-client-id',
   clientSecret: 'your-client-secret',
   callbackURL:  '/callback'
  },
  function(accessToken, idToken, profile, done) {
    //do something here with the profile
    return done(null, profile);
  }
);

passport.use(strategy);

Usage

app.get('/callback', 
  passport.authenticate('auth0', { failureRedirect: '/login' }), 
  function(req, res) {
    if (!req.user) {
      throw new Error('user null');
    }
    res.redirect("/");
  }
);

app.get('/login', 
  passport.authenticate('auth0', {}), function (req, res) {
  res.redirect("/");
});

This way when you go to /login you will get redirect to auth0, to a page where you can select the identity provider.

If you want to force to force an identity provider you can use:

app.get('/login/google', 
  passport.authenticate('auth0', {connection: 'google-oauth2'}), function (req, res) {
  res.redirect("/");
});

API access

If you want to get a list of connections or users from auth0, use the auth0 module.

Complete example

A complete example of using this library here.

Documentation

For more information about auth0 contact our documentation page.

License

This client library is MIT licensed.

npm loves you