willchen96 stops the download system from borrowing the database's master key

A quiet backend fix gives file-download links their own dedicated signing secret instead of quietly reusing a far more powerful credential.

securityinfrastructure

When the system hands out a secure link to download a document, it signs that link with a secret key so it can't be forged. Until now, if the dedicated key for that job wasn't configured, the system silently fell back to using the master credential for its underlying database - the single most sensitive secret in the stack.

This change ends that. Download links now require their own purpose-built signing key, and if it's missing, the system fails loudly and names exactly what's not set instead of quietly reaching for the master credential. The practical payoff is separation: the team can rotate, scope, or revoke the download key without any risk of disturbing the database credential, and misconfigurations get caught at setup rather than becoming a silent security gap.

So what Anyone evaluating this project's security posture should note the discipline: sensitive credentials are being kept isolated rather than quietly shared.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

3 commits from open-legal-products/mike, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
469ee4ad Merge pull request #56 from willchen96/legal-download-updates cosimoastrada 2026-05-11 ↗ GitHub
Update OSS setup docs and remove app legal pages
ea48cded fix: require dedicated download signing secret willchen96 2026-05-17 ↗ GitHub
2bbb6288 Merge pull request #146 from willchen96/require-download-signing-secret cosimoastrada 2026-05-17 ↗ GitHub
fix: require dedicated download signing secret

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-706.md from inside the repo you want the changes in.

⬇ Download capture-thread-706.md