Skip to content

Conversation

@apps-caraga
Copy link
Owner

EncryptionMiddleware provides transparent, encryption and decryption of specified columns in your API requests and responses.

Note: Encryption is global. All specified columns are encrypted and decrypted using the same set of keys and versioning, not per-user or per-tenant.

Features

  • AES-256-CBC encryption for specified columns
  • Key versioning and rotation support
  • Works for both single and batch record operations
  • Transparent: encrypts on create/update, decrypts on read/list

Configuration

  • You must provide the following properties:
    • keyVersions: JSON object mapping version names to encryption keys (each key must be at least 32 characters)
    • activeVersion: The version name to use for new encryptions - columns: Comma-separated list of columns to encrypt, in the format table.column

`EncryptionMiddleware` provides transparent, encryption and decryption of specified columns in your API requests and responses. 

**Note:** Encryption is global. All specified columns are encrypted and decrypted using the same set of keys and versioning, not per-user or per-tenant.

## Features
- AES-256-CBC encryption for specified columns
- Key versioning and rotation support
- Works for both single and batch record operations
- Transparent: encrypts on create/update, decrypts on read/list

 **Configuration**
   - You must provide the following properties:
     - `keyVersions`: JSON object mapping version names to encryption keys (each key must be at least 32 characters)
     - `activeVersion`: The version name to use for new encryptions
     - `columns`: Comma-separated list of columns to encrypt, in the format `table.column`
Added loading of encryption middlewre
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.

1 participant