0.1.1 • Published 4 years ago

passport-cas-yale v0.1.1

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

passport-cas

Yale CAS authentication strategies redeveloped for Passport.

Install

$ npm install passport-cas-yale

Configure Strategy

passport.use(new (require('passport-cas-yale').Strategy)({
  ssoBaseURL: 'https://secure.its.yale.edu/cas',
  serverBaseURL: 'http://localhost:8080'
}, function(login, done) {
  User.findOne({login: login}, function (err, user) {
    if (err) {
      return done(err);
    }
    if (!user) {
      return done(null, false, {message: 'Unknown user'});
    }
    return done(null, user);
  });
}));

Authenticate Requests

passport.js

passport.use(new(require('passport-cas-yale').Strategy)({ ssoBaseURL: 'https://secure.its.yale.edu/cas', serverBaseURL: 'http://localhost:8080' }, function(login, done) { User.findOne({ login: login }, function(err, user) { if (err) { return done(err); } if (!user) { return done(null, false, { msg: 'Unknown user' }); } return done(null, user); }); }));

For example:

app.js

app.get('/auth/cas', apiController.casLogin);

api.js

exports.casLogin = function(req, res, next) { passport.authenticate('cas', function(err, user, info) { if (err) { return next(err); }

if (!user) {
  req.session.messages = info.message;
  return res.redirect('/');
}

req.logIn(user, function(err) {
  if (err) {
    return next(err);
  }

  req.session.messages = '';
  return res.redirect('/');
});

})(req, res, next); };

CAS versions

Yale CAS only works with CAS 2.0.

License

The MIT License

0.1.1

4 years ago

0.1.0

4 years ago

0.0.9

4 years ago

0.0.8

4 years ago

0.0.7

4 years ago

0.0.6

4 years ago

0.0.5

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago