v1.7.2 #364

Merged
LukeGus merged 8 commits from dev-1.7.2 into main 2025-10-06 15:11:26 +00:00

8 Commits

Author SHA1 Message Date
LukeGus
04db792f56 Cleanup OIDC pr and run prettier 2025-10-06 09:24:21 -05:00
thorved
c9474c4c43 Fix race condition and remove redundant kekSalt for OIDC users
Critical fixes:

1. Race Condition Mitigation:
   - Added read-after-write verification in setupOIDCUserEncryption()
   - Ensures session uses the DEK that's actually in the database
   - Prevents data loss when concurrent logins occur for new OIDC users
   - If race is detected, discards generated DEK and uses stored one

2. Remove Redundant kekSalt Logic:
   - Removed unnecessary kekSalt generation and checks for OIDC users
   - kekSalt is not used in OIDC key derivation (uses userId as salt)
   - Reduces database operations from 4 to 2 per authentication
   - Simplifies code and removes potential confusion

3. Improved Error Handling:
   - systemKey cleanup moved to finally block
   - Ensures sensitive key material is always cleared from memory

These changes ensure data consistency and prevent potential data loss
in high-concurrency scenarios.
2025-10-06 09:19:22 -05:00
thorved
772afb1bc7 Fix OIDC credential persistence issue
The issue was that OIDC users were getting a new random Data Encryption Key (DEK)
on every login, which made previously encrypted credentials inaccessible.

Changes:
- Modified setupOIDCUserEncryption() to persist the DEK encrypted with a system-derived key
- Updated authenticateOIDCUser() to properly retrieve and use the persisted DEK
- Ensured OIDC users now have the same encryption persistence as password-based users

This fix ensures that credentials created by OIDC users remain accessible across
multiple login sessions.
2025-10-06 09:19:22 -05:00
LukeGus
a728ff227e Add real client IP 2025-10-05 23:51:53 -05:00
LukeGus
85fec49bd5 Fix snake case mismatching 2025-10-05 23:13:41 -05:00
LukeGus
75e973f3a2 Run code cleanup, add sidebar persistence, fix OIDC credentials, force SSH password. 2025-10-05 21:48:32 -05:00
Ved Prakash
aaec940b1b Adds camelCase support for encrypted field mappings (#342)
Extends encrypted field mappings to include camelCase variants
to support consistency and compatibility with different naming
conventions. Updates reverse mappings for Drizzle ORM to allow
conversion between camelCase and snake_case field names.

Improves integration with systems using mixed naming styles.
2025-10-04 19:09:10 -05:00
Ved Prakash
8aa2ee67ae Feature request: Add delete confirmation dialog to file manager (#344)
* Feature request: Add delete confirmation dialog to file manager

- Added confirmation dialog before deleting files/folders
- Users must confirm deletion with a warning message
- Works for both Delete key and right-click delete
- Shows different messages for single file, folder, or multiple items
- Includes permanent deletion warning
- Follows existing design patterns using confirmWithToast

* Adds confirmation for deletion of items including folders

Updates the file deletion confirmation logic to distinguish between
deleting multiple items with or without folders. Introduces a new
translation string for a clearer user prompt when folders and their
contents are included in the deletion.

Improves clarity and reduces user error when performing bulk deletions.

* feat: Add Chinese translations for delete confirmation messages
2025-10-04 19:08:55 -05:00