浏览代码

feat: LDAP debug flag

Nick 6 年之前
父节点
当前提交
922f179a90

+ 8 - 9
client/components/admin/admin-dev-flags.vue

@@ -17,6 +17,14 @@
             span Do NOT enable these flags unless you know what you're doing!
             .caption Doing so may result in data loss or broken installation!
           v-card-text
+            v-switch.mt-3(
+              color='primary'
+              hint='Log detailed debug info on LDAP/AD login attempts.'
+              persistent-hint
+              label='LDAP Debug'
+              v-model='flags.ldapdebug'
+            )
+            v-divider.mt-3
             v-switch.mt-3(
               color='red'
               hint='Log all queries made to the database to console.'
@@ -24,15 +32,6 @@
               label='SQL Query Logging'
               v-model='flags.sqllog'
             )
-            //- v-divider.mt-3
-            //- v-switch.mt-3(
-            //-   color='primary'
-            //-   hint='Log all queries made to the database to console.'
-            //-   persistent-hint
-            //-   label='SQL Query Log'
-            //-   v-model='flags.sqllog'
-            //- )
-
 </template>
 
 <script>

+ 1 - 0
server/app/data.yml

@@ -39,6 +39,7 @@ defaults:
       theme: 'default'
       darkMode: false
     flags:
+      ldapdebug: false
       sqllog: false
     # System defaults
     setup: false

+ 0 - 1
server/core/auth.js

@@ -1,6 +1,5 @@
 const passport = require('passport')
 const passportJWT = require('passport-jwt')
-const fs = require('fs-extra')
 const _ = require('lodash')
 const path = require('path')
 const jwt = require('jsonwebtoken')

+ 5 - 0
server/graph/resolvers/authentication.js

@@ -44,6 +44,11 @@ module.exports = {
           responseResult: graphHelper.generateSuccess('Login success')
         }
       } catch (err) {
+        // LDAP Debug Flag
+        if (args.strategy === 'ldap' && WIKI.config.flags.ldapdebug) {
+          WIKI.logger.warn('LDAP LOGIN ERROR (c1): ', err)
+        }
+
         return graphHelper.generateError(err)
       }
     },

+ 0 - 1
server/graph/resolvers/site.js

@@ -1,4 +1,3 @@
-const _ = require('lodash')
 const graphHelper = require('../../helpers/graph')
 
 /* global WIKI */

+ 1 - 1
server/helpers/graph.js

@@ -13,7 +13,7 @@ module.exports = {
   generateError (err, complete = true) {
     const error = {
       succeeded: false,
-      errorCode: err.code || 1,
+      errorCode: _.isFinite(err.code) ? err.code : 1,
       slug: err.name,
       message: err.message || 'An unexpected error occured.'
     }

+ 3 - 0
server/modules/authentication/ldap/authentication.js

@@ -45,6 +45,9 @@ module.exports = {
           })
           cb(null, user)
         } catch (err) {
+          if (WIKI.config.flags.ldapdebug) {
+            WIKI.logger.warn('LDAP LOGIN ERROR (c2): ', err)
+          }
           cb(err, null)
         }
       }