Browse Source

fix: handle multiple LDAP strategies (#5116)

pull/5132/head
Manuel 2 years ago
committed by GitHub
parent
commit
1f489a3d8e
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 3 additions and 2 deletions
  1. 1
      server/core/auth.js
  2. 2
      server/models/users.js
  3. 2
      server/modules/authentication/ldap/authentication.js

1
server/core/auth.js

@ -82,6 +82,7 @@ module.exports = {
const strategy = require(`../modules/authentication/${stg.strategyKey}/authentication.js`) const strategy = require(`../modules/authentication/${stg.strategyKey}/authentication.js`)
stg.config.callbackURL = `${WIKI.config.host}/login/${stg.key}/callback` stg.config.callbackURL = `${WIKI.config.host}/login/${stg.key}/callback`
stg.config.key = stg.key;
strategy.init(passport, stg.config) strategy.init(passport, stg.config)
strategy.config = stg.config strategy.config = stg.config

2
server/models/users.js

@ -308,7 +308,7 @@ module.exports = class User extends Model {
// Authenticate // Authenticate
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
WIKI.auth.passport.authenticate(selStrategy.strategyKey, {
WIKI.auth.passport.authenticate(selStrategy.key, {
session: !strInfo.useForm, session: !strInfo.useForm,
scope: strInfo.scopes ? strInfo.scopes : null scope: strInfo.scopes ? strInfo.scopes : null
}, async (err, user, info) => { }, async (err, user, info) => {

2
server/modules/authentication/ldap/authentication.js

@ -10,7 +10,7 @@ const _ = require('lodash')
module.exports = { module.exports = {
init (passport, conf) { init (passport, conf) {
passport.use('ldap',
passport.use(conf.key,
new LdapStrategy({ new LdapStrategy({
server: { server: {
url: conf.url, url: conf.url,

Loading…
Cancel
Save