diff --git a/backend/routes/api/oidc.js b/backend/routes/api/oidc.js index e3da2caa..b02c503f 100644 --- a/backend/routes/api/oidc.js +++ b/backend/routes/api/oidc.js @@ -1,4 +1,5 @@ const crypto = require('crypto'); +const error = require('../../lib/error'); const express = require('express'); const jwtdecode = require('../../lib/express/jwt-decode'); const oidc = require('openid-client'); @@ -35,7 +36,8 @@ router .where({id: 'oidc-config'}) .first() .then( row => getInitParams(req, row)) - .then( params => redirectToAuthorizationURL(res, params)); + .then( params => redirectToAuthorizationURL(res, params)) + .catch( err => redirectWithError(res, err)); }); @@ -73,7 +75,12 @@ router * @param {Setting} row * */ let getClient = async row => { - let issuer = await oidc.Issuer.discover(row.meta.issuerURL); + let issuer; + try { + issuer = await oidc.Issuer.discover(row.meta.issuerURL); + } catch(err) { + throw new error.AuthError(`Discovery failed for the specified URL with message: ${err.message}`); + } return new issuer.Client({ client_id: row.meta.clientID, diff --git a/frontend/js/app/settings/oidc-config/main.ejs b/frontend/js/app/settings/oidc-config/main.ejs index 1395a920..15eb3981 100644 --- a/frontend/js/app/settings/oidc-config/main.ejs +++ b/frontend/js/app/settings/oidc-config/main.ejs @@ -41,7 +41,7 @@
Enabled
- > + >
diff --git a/frontend/js/app/settings/oidc-config/main.js b/frontend/js/app/settings/oidc-config/main.js index b4499785..34b16b57 100644 --- a/frontend/js/app/settings/oidc-config/main.js +++ b/frontend/js/app/settings/oidc-config/main.js @@ -3,7 +3,6 @@ const App = require('../../main'); const template = require('./main.ejs'); require('jquery-serializejson'); -require('selectize'); module.exports = Mn.View.extend({ template: template,