12345678910111213141516171819202122232425262728293031 |
- /* global WIKI */
- // ------------------------------------
- // OAuth2 Account
- // ------------------------------------
- const OAuth2Strategy = require('passport-oauth2').Strategy
- module.exports = {
- key: 'oauth2',
- title: 'OAuth2',
- useForm: false,
- props: ['clientId', 'clientSecret', 'authorizationURL', 'tokenURL'],
- init (passport, conf) {
- passport.use('oauth2',
- new OAuth2Strategy({
- authorizationURL: conf.authorizationURL,
- tokenURL: conf.tokenURL,
- clientID: conf.clientId,
- clientSecret: conf.clientSecret,
- callbackURL: conf.callbackURL
- }, (accessToken, refreshToken, profile, cb) => {
- WIKI.db.users.processProfile(profile).then((user) => {
- return cb(null, user) || true
- }).catch((err) => {
- return cb(err, null) || true
- })
- })
- )
- }
- }
|