Just wanted to mention that I finished work on this example.
https://github.com/ripples/Present/blob/master/server/app.js#L35
passport.use('lti-strategy', new CustomStrategy( function(req, callback) { var val = (req.body) ? req.body : req.user try{ var provider = new lti.Provider(val , process.env.LTI_SECRET) if(req.user){ callback(null, val) } else{ provider.valid_request(req, function(err, isValid) { if(err){ console.log("LTI Error", err, isValid) } callback(err, val) }); } } catch(err){ console.log("Authenication error", err) callback(err, null) } } ))
I finished developing a custom passport strategy and used a different library for authentication.
https://github.com/omsmith/ims-lti
This is the new lti.Provider
bit, the key is that it accepts a post req object for LTI to execute auth.
source share