Slide 36
Slide 36 text
if (!table.lookup(keys_table, req.http.X-Tmp-Sign-Key)) {
error 701 "forbidden";
}
if (time.is_after(now,
std.integer2time(std.atoi(req.http.X-Tmp-Expiry)))) {
error 701 "forbidden";
}
set req.http.X-Tmp-Path = regsub(req.url.path, …)
if (req.http.X-Tmp-Signature !=
digest.hmac_sha256(
table.lookup(keys_table, req.http.X—Tmp-Sign-Key),
req.http.X-Tmp-Expiry ":" req.http.X-Tmp-Path)) {
error 701 "forbidden";
}
} else {
error 701 "forbidden";
}
} else {
error 701 "forbidden";
}