Haio 0.2.X
Homebrew Asset IO/CDN
Loading...
Searching...
No Matches
Security
Collaboration diagram for Security:

every limit in one table, so reviewing what protects a deployment is one page.

[security]
timeout = 10 # in seconds, one conversion
max_size_pixel = 4096 # in pixels, what a resize may ask for outright
max_size_percent = 500 # in percent, what a resize may ask for as a share
max_cache_entries_by_ip = 30 # entries one address may create per ttl window
max_requests_by_ip = 10 # per second, as a leaky bucket
allow_unzip = false # whether a path may reach inside a zip
max_unzip = 64 # in mb, one extracted file and the archives kept

Security Defaults

each has a default and the server starts without them. the two counted per address default to no limit on purpose: a number picked blind shuts out an office behind one NAT. either way the server says at startup which ones it chose for itself.

Security Why

key answers
max_size_pixel a url asking for an allocation
max_size_percent the same, asked for as a share of the picture
timeout a url asking for work
max_cache_entries_by_ip one caller evicting everyone else's entries
max_requests_by_ip a flood
allow_unzip work on behalf of whoever wrote the file
max_unzip a small zip that expands into a large one

over the cache quota the answer is still produced and still correct, it is simply not stored: the limit is on eviction, not on access.