Skip to content

Commit f64533b

Browse files
committed
Add NanoID; security, health, docs & docker fixes
Introduce NanoID for user ID generation and enable optional nanoid in commons crate. Implement multiple security hardenings: verify refresh token role matches current user role, reject tokens missing token_type or using Refresh as access, sanitize file download inputs and Content-Disposition header, add WebSocket auth rate limiting, and escape CURRENT_USER() replacement to avoid injection. Restrict /healthz and /readyz to localhost to prevent remote info disclosure and change default CORS to disable credentials. Minor robustness and UX fixes: skip re-loading cached tables in SchemaRegistry, default TopicOp and Default impls, small FlatBuffer init fix, adjust tests and CLI session setup check. Add Keycloak entrypoint and compose tweaks for newer Keycloak versions, update README (layout, quick start, examples) and include KalamDB logo image.
1 parent 0b827bf commit f64533b

27 files changed

Lines changed: 265 additions & 593 deletions

File tree

Cargo.lock

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,9 @@ actix-multipart = "0.7"
8282
# UUID generation
8383
uuid = { version = "1.21.0", features = ["v4", "v7", "serde"] }
8484

85+
# NanoID generation (21-char URL-safe unique IDs)
86+
nanoid = "0.4.0"
87+
8588
# ULID generation
8689
ulid = "1.1"
8790

Notes.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1281,6 +1281,8 @@ Query OK, 0 rows affected
12811281

12821282
187) subscription id is too long "subscription_id": "u_ec6f250a2c094e2492ee61a83d0839d4-bc83de82331b416fb0f54be67759f55b-sub-359870fa18caeb70",
12831283
come uop with a better and shorter one without causing issues in the future
1284+
Also for a better userid unique one: NanoID
1285+
12841286

12851287
188) Instead of notify all followers remember where the user is connected to through the livequerymanager and forward the notification to that exact node only
12861288

0 commit comments

Comments
 (0)