This commit is contained in:
Sergey Konovalov
2024-03-11 18:06:31 +03:00
parent 41d6ab37db
commit 7326335713
2 changed files with 11 additions and 1 deletions

View File

@ -1613,6 +1613,14 @@ exports.downloadFile = function(req, res) {
isInJwtToken = true;
} else if (wopiClient.isWopiJwtToken(decoded)) {
({url, headers} = wopiClient.getWopiFileUrl(ctx, decoded.fileInfo, decoded.userAuth));
let filterStatus = yield wopiClient.checkIpFilter(ctx, url);
if (0 === filterStatus) {
//todo false? (true because it passed checkIpFilter for wopi)
//todo use directIfIn
isInJwtToken = true;
} else {
errorDescription = 'access deny';
}
} else if (!tenTokenEnableBrowser) {
//todo token required
if (decoded.url) {

View File

@ -748,7 +748,8 @@ function checkFileInfo(ctx, wopiSrc, access_token, opt_sc) {
}
fillStandardHeaders(ctx, headers, uri, access_token);
ctx.logger.debug('wopi checkFileInfo request uri=%s headers=%j', uri, headers);
//todo false?
//todo false? (true because it passed checkIpFilter for wopi)
//todo use directIfIn
let isInJwtToken = true;
let getRes = yield utils.downloadUrlPromise(ctx, uri, tenDownloadTimeout, undefined, undefined, isInJwtToken, headers);
ctx.logger.debug(`wopi checkFileInfo headers=%j body=%s`, getRes.response.headers, getRes.body);
@ -969,6 +970,7 @@ function dummyOk(req, res) {
res.sendStatus(200);
}
exports.checkIpFilter = checkIpFilter;
exports.discovery = discovery;
exports.collaboraCapabilities = collaboraCapabilities;
exports.parseWopiCallback = parseWopiCallback;