Skip to content

Fix per-user settings secret encryption - #22

Merged
ralyodio merged 1 commit into
profullstack:masterfrom
JoesnageL:codex/per-user-settings-encryption
Jul 3, 2026
Merged

Fix per-user settings secret encryption#22
ralyodio merged 1 commit into
profullstack:masterfrom
JoesnageL:codex/per-user-settings-encryption

Conversation

@JoesnageL

Copy link
Copy Markdown
Contributor

Summary

  • derive settings secret encryption keys from the master SETTINGS_ENCRYPTION_KEY plus user_id
  • return per-user crypto keys from /api/settings/crypto-key instead of the shared master key
  • keep legacy master-key encrypted blobs readable and migrate them to per-user encryption on settings GET
  • update daemon secret loading/writing to use per-user derived keys with legacy fallback

Tests

  • pnpm exec vitest run apps/web/src/lib/server-crypto.test.ts apps/daemon/src/user-config.test.ts (22 passed)

Fixes #14

@ralyodio
ralyodio merged commit caa2a6c into profullstack:master Jul 3, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug: Shared encryption key across all tenants exposes all users on single key compromise

2 participants