passport-pnoi

0.2.0 • Public • Published

Passport.js authentication for PN:OI

Passport strategy for authenticating with PN:OI using the OAuth 2.0 API.

This module lets you authenticate using PN:OI in your Node.js applications.

By plugging into Passport, PN:OI authentication can be easily and unobtrusively integrated into any application or framework that supports Connect-style middleware, including Express.

Install

npm install passport-pnoi

Usage

Configure Strategy

The PN:OI authentication strategy authenticates users using a PN:OI 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.

var OAuth2Strategy = require("passport-crudr").Strategy;

passport.use(new OAuth2Strategy({
	clientID: CLIENT_ID,
	clientSecret: CLIENT_SECRET,
	callbackURL: "http://www.example.net/auth/crudr/callback"
	},
	function(accessToken, refreshToken, profile, done) {
	User.findOrCreate({ providerId: profile.id }, function (err, user) {
		return done(err, user);
	});
	}
));

Authenticate Requests

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

For example, as route middleware in an Express application:

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

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

Credits

Initiated by Makis Tracend

Part of PN:OI by K&D Interactive

Released under the MIT license

Package Sidebar

Install

npm i passport-pnoi

Homepage

pnoi.net

Weekly Downloads

2

Version

0.2.0

License

none

Last publish

Collaborators

  • kdi