binwiederhier
5e32f05302
Read /account from primary
2026-06-25 20:24:50 -04:00
Philipp C. Heckel
3bfb9f334b
Merge pull request #1795 from lmorchard/fix/sync-topic-deny-all
...
Grant users access to their own sync topic under deny-all (fixes #733 )
2026-06-22 21:17:37 -04:00
binwiederhier
9b3ab5a302
Remove migration test
2026-06-22 17:02:47 -04:00
binwiederhier
4313b02fc6
Allow primary email for provisioend users
2026-06-22 12:59:50 -04:00
binwiederhier
d7dea6d250
Review
2026-06-21 11:19:49 -04:00
Les Orchard and Claude Opus 4.8
cac3b2986a
Grant users access to their own sync topic under deny-all
...
Manager.Authorize had no special case for a user's own sync topic, so with
auth-default-access=deny-all the per-account sync topic (st_...) fell through
to the default access and was denied. This broke web app account sync for
non-admin users: wss://.../st_<id>/ws returned 403. Admin-role users were
unaffected via the existing role bypass.
Allow a user full access to their own SyncTopic in Authorize. This fixes
existing users without a migration, since it needs no ACL row.
Fixes #733
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-17 11:58:29 -07:00
binwiederhier
eff808d0f8
Lint
2026-06-13 09:35:09 -04:00
binwiederhier
30dd4840a2
Phase 2, email verification rework, ui stuff
2026-06-12 11:40:59 -04:00
binwiederhier
fd716e4807
Phase 1
2026-06-12 11:07:48 -04:00
binwiederhier
ddb878d985
Fix ACL case sensitivity issues in sqlite
2026-06-04 10:28:33 -04:00
binwiederhier
b4cb1bb7fb
Fix race and a small issue with the access cache
2026-06-03 21:01:52 -04:00
binwiederhier
204723f3c0
Make opt-in flag
2026-05-31 14:28:04 -04:00
binwiederhier
63ec73a319
Tests
2026-03-30 12:21:19 -04:00
binwiederhier
3d9ce69042
PG races
2026-03-16 15:48:36 -04:00
binwiederhier
85bdfc61ce
Refine, log unhealthy replica
2026-03-11 21:07:58 -04:00
binwiederhier
f1865749d7
WIP: Postgres read-only replica
2026-03-10 22:17:40 -04:00
binwiederhier
0d4b1b00e6
Users() optimization to help with startup time
2026-03-06 14:46:53 -05:00
binwiederhier
8afeb813d9
Move OpenPostgres
2026-03-02 19:52:36 -05:00
binwiederhier
11c79a6369
Refine again
2026-03-01 14:24:06 -05:00
binwiederhier
039566bcaf
REmove unused
2026-03-01 11:59:24 -05:00
binwiederhier
544ce112b5
Manual review
2026-03-01 11:44:22 -05:00
binwiederhier
c19377109e
Small refinements
2026-02-28 21:15:51 -05:00
binwiederhier
ebb48e217d
Merge user store and manager
2026-02-28 17:35:35 -05:00
binwiederhier
28a436c0d2
Optimizations
2026-02-23 14:11:36 -05:00
binwiederhier
850a9d4cc4
Fix bug with provisioned token removal
2026-02-22 20:28:37 -05:00
binwiederhier
c76e39bb0e
Manual updates
2026-02-21 10:36:09 -05:00
binwiederhier
a28d8e7924
Update docs, manual changes
2026-02-20 16:36:41 -05:00
binwiederhier
a4c836b531
Refine
2026-02-20 15:36:12 -05:00
binwiederhier
039d555689
Fix tests
2026-02-20 08:19:25 -05:00
binwiederhier
4cbd80c68e
Use one PG connection, add support for connection params
2026-02-19 22:34:53 -05:00
binwiederhier
2716ede6e1
Extract message cache into message/ package with model/ types
...
Move message cache from server/message_cache.go into a dedicated
message/ package with Store interface, SQLite and PostgreSQL
implementations. Extract shared types into model/ package.
2026-02-18 20:22:44 -05:00
binwiederhier
e3a402ed95
Make user tests work for postgres and sqlite
2026-02-17 20:14:45 -05:00
binwiederhier
1abc1005d0
Re-org
2026-02-17 12:04:51 -05:00
binwiederhier
07c3e280bf
Refactor user package to Store interface with PostgreSQL support
...
Extract database operations from Manager into a Store interface with
SQLite and PostgreSQL implementations using a shared commonStore.
Split SQLite migrations into store_sqlite_migrations.go, use shared
schema_version table for PostgreSQL, rename user_user/user_tier tables
to "user"/tier, and wire up database-url in CLI commands.
2026-02-16 22:39:54 -05:00
binwiederhier
5244e0be14
Fix tests
2025-08-09 10:04:57 -04:00
binwiederhier
57a51ab2da
Fix tests
2025-08-08 15:16:53 -04:00
binwiederhier
ea338ae4fa
Make it easy to build without Stripe
2025-08-07 16:41:39 +02:00
Hunter Kehoe
81463614c9
prevent changing a provisioned user's password
2025-08-03 16:07:24 -06:00
binwiederhier
9f987e66fa
Make sure tokens are updated instead of deleted/re-added
2025-07-31 08:36:05 +02:00
binwiederhier
23ec7702fc
Add "auth-tokens"
2025-07-31 07:08:35 +02:00
binwiederhier
07e9670a09
Fix bug in test
2025-07-27 22:33:29 +02:00
binwiederhier
fe545423c5
Change to auth-(users|access), upgrade manually added users to provision users
2025-07-27 12:10:16 +02:00
binwiederhier
f3c67f1d71
Refuse to update manually created users
2025-07-27 11:02:34 +02:00
binwiederhier
f99801a2e6
Add "ntfy user hash"
2025-07-26 12:14:21 +02:00
binwiederhier
4457e9e26f
Migration
2025-07-26 11:16:33 +02:00
binwiederhier
f59df0f40a
Works
2025-07-21 17:44:00 +02:00
binwiederhier
c0b5151bae
Predefined users
2025-07-10 20:50:29 +02:00
binwiederhier
9f72eb804d
Computers are fast
2025-05-25 12:32:16 -04:00
binwiederhier
42af71e546
Fix test
2025-05-25 12:27:21 -04:00
Tom Hubrecht
44b7c2f198
user: Allow changing the hashed password directly
...
This adds the detection of `NTFY_PASSWORD_HASH` when creating a user or
changing its passsword so that scripts don't have to manipulate the bare
password.
2025-05-21 16:34:14 +02:00