Просмотр исходного кода

Merge pull request #2213 from weseek/support/response-ldap-error

Support/response ldap error
Yuki Takei 5 лет назад
Родитель
Сommit
20067f416e
2 измененных файлов с 21 добавлено и 19 удалено
  1. 12 11
      src/server/routes/index.js
  2. 9 8
      src/server/routes/login-passport.js

+ 12 - 11
src/server/routes/index.js

@@ -63,17 +63,17 @@ module.exports = function(crowi, app) {
   app.get('/admin/security'                     , loginRequiredStrictly , adminRequired , admin.security.index);
   app.get('/admin/security'                     , loginRequiredStrictly , adminRequired , admin.security.index);
 
 
   // OAuth
   // OAuth
-  app.get('/passport/google'                      , loginPassport.loginWithGoogle);
-  app.get('/passport/github'                      , loginPassport.loginWithGitHub);
-  app.get('/passport/twitter'                     , loginPassport.loginWithTwitter);
-  app.get('/passport/oidc'                        , loginPassport.loginWithOidc);
-  app.get('/passport/saml'                        , loginPassport.loginWithSaml);
-  app.get('/passport/basic'                       , loginPassport.loginWithBasic);
-  app.get('/passport/google/callback'             , loginPassport.loginPassportGoogleCallback);
-  app.get('/passport/github/callback'             , loginPassport.loginPassportGitHubCallback);
-  app.get('/passport/twitter/callback'            , loginPassport.loginPassportTwitterCallback);
-  app.get('/passport/oidc/callback'               , loginPassport.loginPassportOidcCallback);
-  app.post('/passport/saml/callback'              , loginPassport.loginPassportSamlCallback);
+  app.get('/passport/google'                      , loginPassport.loginWithGoogle, loginPassport.loginFailure);
+  app.get('/passport/github'                      , loginPassport.loginWithGitHub, loginPassport.loginFailure);
+  app.get('/passport/twitter'                     , loginPassport.loginWithTwitter, loginPassport.loginFailure);
+  app.get('/passport/oidc'                        , loginPassport.loginWithOidc, loginPassport.loginFailure);
+  app.get('/passport/saml'                        , loginPassport.loginWithSaml, loginPassport.loginFailure);
+  app.get('/passport/basic'                       , loginPassport.loginWithBasic, loginPassport.loginFailure);
+  app.get('/passport/google/callback'             , loginPassport.loginPassportGoogleCallback   , loginPassport.loginFailure);
+  app.get('/passport/github/callback'             , loginPassport.loginPassportGitHubCallback   , loginPassport.loginFailure);
+  app.get('/passport/twitter/callback'            , loginPassport.loginPassportTwitterCallback  , loginPassport.loginFailure);
+  app.get('/passport/oidc/callback'               , loginPassport.loginPassportOidcCallback     , loginPassport.loginFailure);
+  app.post('/passport/saml/callback'              , loginPassport.loginPassportSamlCallback     , loginPassport.loginFailure);
 
 
   // markdown admin
   // markdown admin
   app.get('/admin/markdown'                   , loginRequiredStrictly , adminRequired , admin.markdown.index);
   app.get('/admin/markdown'                   , loginRequiredStrictly , adminRequired , admin.markdown.index);
@@ -182,4 +182,5 @@ module.exports = function(crowi, app) {
 
 
   app.get('/*/$'                   , loginRequired , page.showPageWithEndOfSlash, page.notFound);
   app.get('/*/$'                   , loginRequired , page.showPageWithEndOfSlash, page.notFound);
   app.get('/*'                     , loginRequired , page.showPage, page.notFound);
   app.get('/*'                     , loginRequired , page.showPage, page.notFound);
+
 };
 };

+ 9 - 8
src/server/routes/login-passport.js

@@ -89,7 +89,8 @@ module.exports = function(crowi, app) {
       ldapAccountInfo = await promisifiedPassportAuthentication(strategyName, req, res);
       ldapAccountInfo = await promisifiedPassportAuthentication(strategyName, req, res);
     }
     }
     catch (err) {
     catch (err) {
-      return next(err);
+      debug(err.message);
+      return next();
     }
     }
 
 
     // check groups for LDAP
     // check groups for LDAP
@@ -125,7 +126,7 @@ module.exports = function(crowi, app) {
 
 
     // login
     // login
     await req.logIn(user, (err) => {
     await req.logIn(user, (err) => {
-      if (err) { return next(err) }
+      if (err) { debug(err.message); return next() }
       return loginSuccessHandler(req, res, user);
       return loginSuccessHandler(req, res, user);
     });
     });
   };
   };
@@ -216,7 +217,7 @@ module.exports = function(crowi, app) {
       }
       }
       if (!user) { return next() }
       if (!user) { return next() }
       req.logIn(user, (err) => {
       req.logIn(user, (err) => {
-        if (err) { return next() }
+        if (err) { debug(err.message); return next() }
 
 
         return loginSuccessHandler(req, res, user);
         return loginSuccessHandler(req, res, user);
       });
       });
@@ -287,7 +288,7 @@ module.exports = function(crowi, app) {
 
 
     // login
     // login
     req.logIn(user, (err) => {
     req.logIn(user, (err) => {
-      if (err) { return next(err) }
+      if (err) { debug(err.message); return next() }
       return loginSuccessHandler(req, res, user);
       return loginSuccessHandler(req, res, user);
     });
     });
   };
   };
@@ -329,7 +330,7 @@ module.exports = function(crowi, app) {
 
 
     // login
     // login
     req.logIn(user, (err) => {
     req.logIn(user, (err) => {
-      if (err) { return next(err) }
+      if (err) { debug(err.message); return next() }
       return loginSuccessHandler(req, res, user);
       return loginSuccessHandler(req, res, user);
     });
     });
   };
   };
@@ -371,7 +372,7 @@ module.exports = function(crowi, app) {
 
 
     // login
     // login
     req.logIn(user, (err) => {
     req.logIn(user, (err) => {
-      if (err) { return next(err) }
+      if (err) { debug(err.message); return next() }
       return loginSuccessHandler(req, res, user);
       return loginSuccessHandler(req, res, user);
     });
     });
   };
   };
@@ -419,7 +420,7 @@ module.exports = function(crowi, app) {
     // login
     // login
     const user = await externalAccount.getPopulatedUser();
     const user = await externalAccount.getPopulatedUser();
     req.logIn(user, (err) => {
     req.logIn(user, (err) => {
-      if (err) { return next(err) }
+      if (err) { debug(err.message); return next() }
       return loginSuccessHandler(req, res, user);
       return loginSuccessHandler(req, res, user);
     });
     });
   };
   };
@@ -523,7 +524,7 @@ module.exports = function(crowi, app) {
 
 
     const user = await externalAccount.getPopulatedUser();
     const user = await externalAccount.getPopulatedUser();
     await req.logIn(user, (err) => {
     await req.logIn(user, (err) => {
-      if (err) { return next() }
+      if (err) { debug(err.message); return next() }
       return loginSuccessHandler(req, res, user);
       return loginSuccessHandler(req, res, user);
     });
     });
   };
   };