Skip to content

Hotlink mitigation strategy #11

Description

@AevumDecessus

Summary

Decide how to prevent audio files from being hotlinked or shared outside the intended playback context.

Options

  1. Cloudflare hotlink protection - blocks requests without a matching Referer header. Free, zero code changes, but easily bypassed.
  2. Referrer checking at Django level - reject requests where Referer doesn't match read.fragforce.org. Same weakness as above but more control.
  3. Rate limiting - limit requests per IP/session. Doesn't prevent sharing but limits abuse.
  4. Combination - Cloudflare hotlink protection + rate limiting. Defense in depth without over-engineering.

Considerations

  • Public domain books: hotlinking is annoying but not a legal issue
  • Licensed books: already session-gated, so hotlinking is already mitigated for those
  • Is this worth solving for public domain books at MVP?
  • Cloudflare hotlink protection is a checkbox, not engineering effort

Decision

TBD

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions