Updated
Private file uploads
Accept bounded uploads and keep stored files behind permission-checked downloads.
Configure safe boundaries
| Control | Guidance |
|---|---|
| File types | Allow only the MIME types and extensions the workflow requires |
| File size | Stay within PHP, web-server, and form request limits |
| File count | Accept only the attachments the process needs |
| Retention | Keep files only as long as the stated purpose requires |
Submitted files use randomized private storage, MIME and content checks, executable denial, and capability- and nonce-protected downloads. A difficult-to-guess public URL is not access control.
-
Submit one valid file and confirm the authorized download works.
-
Try a disallowed type and an oversized file and confirm both are rejected clearly.
-
Confirm an unauthorized visitor cannot open the stored file.
-
Verify retention and personal-data erasure remove files when intended.