Security

Keep the admin site private

The admin site is not gated by default. Anyone who can reach it can try to sign in with a Jellyfin administrator's name and password, and the admin API answers anyone holding ADMIN_TOKEN. JellyPass limits sign-in attempts, but:

Tokens and keys

The state file

It holds grants, households, Jellyfin user IDs and a catalogue of media names. JellyPass creates it readable by its owner only; keep backups just as private.

Behind the proxy

Administrator sessions

The admin site signs in with Jellyfin: the password goes to Jellyfin, the temporary Jellyfin session is closed at once, and JellyPass keeps its own session in memory for 12 hours. Every five minutes it checks the administrator is still an enabled Jellyfin administrator. Restarting JellyPass signs everyone out.

Reporting a vulnerability

Please report security problems privately through GitHub security advisories, not in a public issue. Fixes go to the latest release line; pin a version and read release notes before upgrading.