X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fmiddlewares%2Fvalidators%2Fshared%2Fvideos.ts;h=0033a32ff1af454f6a7794ce3403e49965b5526a;hb=8ca52bcc2c37d457e8b19a237c66b8dd1c00b6b9;hp=ebbfc0a0a9242232c349dd070c612b4ac5d51549;hpb=9ab330b90decf4edf152ff8e1d2948c065766b2c;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/middlewares/validators/shared/videos.ts b/server/middlewares/validators/shared/videos.ts index ebbfc0a0a..0033a32ff 100644 --- a/server/middlewares/validators/shared/videos.ts +++ b/server/middlewares/validators/shared/videos.ts @@ -180,18 +180,16 @@ async function checkCanAccessVideoStaticFiles (options: { return checkCanSeeVideo(options) } - if (!video.hasPrivateStaticPath()) return true - const videoFileToken = req.query.videoFileToken - if (!videoFileToken) { - res.sendStatus(HttpStatusCode.FORBIDDEN_403) - return false - } + if (videoFileToken && VideoTokensManager.Instance.hasToken({ token: videoFileToken, videoUUID: video.uuid })) { + const user = VideoTokensManager.Instance.getUserFromToken({ token: videoFileToken }) - if (VideoTokensManager.Instance.hasToken({ token: videoFileToken, videoUUID: video.uuid })) { + res.locals.videoFileToken = { user } return true } + if (!video.hasPrivateStaticPath()) return true + res.sendStatus(HttpStatusCode.FORBIDDEN_403) return false }