X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fmiddlewares%2Foauth.ts;h=280595acc3a08b27c8eab9fd3c0a2bd161e63e3a;hb=829523cfa5177a1810d9373f9a25bf3b18138d1e;hp=ab530141543a1154b49603fe61bc010601ad7258;hpb=2d53be0267acc49cda46707b885096193a1f4e9c;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/middlewares/oauth.ts b/server/middlewares/oauth.ts index ab5301415..280595acc 100644 --- a/server/middlewares/oauth.ts +++ b/server/middlewares/oauth.ts @@ -20,6 +20,8 @@ function authenticate (req: express.Request, res: express.Response, next: expres .end() } + res.locals.authenticated = true + return next() }) } @@ -30,6 +32,7 @@ function authenticateSocket (socket: Socket, next: (err?: any) => void) { logger.debug('Checking socket access token %s.', accessToken) if (!accessToken) return next(new Error('No access token provided')) + if (typeof accessToken !== 'string') return next(new Error('Access token is invalid')) getAccessToken(accessToken) .then(tokenDB => { @@ -39,7 +42,7 @@ function authenticateSocket (socket: Socket, next: (err?: any) => void) { return next(new Error('Invalid access token.')) } - socket.handshake.query['user'] = tokenDB.User + socket.handshake.auth.user = tokenDB.User return next() }) @@ -47,7 +50,7 @@ function authenticateSocket (socket: Socket, next: (err?: any) => void) { } function authenticatePromiseIfNeeded (req: express.Request, res: express.Response, authenticateInQuery = false) { - return new Promise(resolve => { + return new Promise(resolve => { // Already authenticated? (or tried to) if (res.locals.oauth?.token.User) return resolve()