fixed server crash because of unregistered openidconnect strategy

This commit is contained in:
David Leimroth 2022-02-08 20:16:27 +01:00
parent 5a6609150c
commit 339883405f
2 changed files with 15 additions and 9 deletions

4
package-lock.json generated
View File

@ -1,12 +1,12 @@
{
"name": "audiobookshelf",
"version": "1.6.64",
"version": "1.6.65",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "audiobookshelf",
"version": "1.6.64",
"version": "1.6.65",
"license": "GPL-3.0",
"dependencies": {
"archiver": "^5.3.0",

View File

@ -260,16 +260,22 @@ class Server {
app.post('/logout', this.authMiddleware.bind(this), this.logout.bind(this))
app.get("/oidc/login", passport.authenticate('openidconnect'))
app.get("/oidc/login", (() => {
if (!this.db.SSOSettings.isOIDCConfigured) return (req, res) => res.redirect("/");
return passport.authenticate('openidconnect')
})())
app.get("/oidc/callback",
passport.authenticate('openidconnect', { failureRedirect: '/oidc/login', failureMessage: true }),
async (req, res) => {
const token = this.auth.generateAccessToken({ userId: req.user.id })
res.cookie('sso', true, { httpOnly: false /* TODO: Set secure: true */ });
(() => {
if (!this.db.SSOSettings.isOIDCConfigured) return (req, res) => res.redirect("/");
return passport.authenticate('openidconnect', { failureRedirect: '/oidc/login', failureMessage: true }),
async (req, res) => {
const token = this.auth.generateAccessToken({ userId: req.user.id })
res.cookie('sso', true, { httpOnly: false /* TODO: Set secure: true */ });
res.redirect('/');
}
res.redirect('/');
}
})()
)
app.get('/ping', (req, res) => {