enh: CIDR secret override

This commit is contained in:
Ben Allfree 2025-01-09 03:40:51 +00:00
parent be795e4e46
commit 673f897723

View File

@ -13,11 +13,12 @@ export const createIpWhitelistMiddleware = (blockedCIDRs: string[]) => {
const ip = req.ip // or req.headers['x-forwarded-for'] || req.connection.remoteAddress; const ip = req.ip // or req.headers['x-forwarded-for'] || req.connection.remoteAddress;
if ( if (
blockedCIDRs.length === 0 || blockedCIDRs.length === 0 ||
(ip && blockedCIDRObjects.some((cidr) => cidr.contains(ip))) (ip && blockedCIDRObjects.some((cidr) => cidr.contains(ip))) ||
req.header('x-pockethost-secret') === process.env.PH_SECRET
) { ) {
next() next()
} else { } else {
res.status(403).send('Nope') res.status(403).send(`Nope: ${ip}`)
} }
} }
} }