Please select the area the issue is related to
Area/Management (Management API or Management Portal UI)
Please select the aspect the issue is related to
Aspect/API (API backends, definitions, contracts, interfaces, OpenAPI)
Description
Rethink the Config for Encryption
// Database holds database-specific configuration.
type Database struct {
// Driver supports: sqlite3, postgres/postgresql/pgx, sqlserver/mssql.
Driver string `koanf:"driver"`
// Path is the file path for SQLite databases.
Path string `koanf:"path"`
Host string `koanf:"host"`
Port int `koanf:"port"`
Name string `koanf:"name"`
User string `koanf:"user"`
Password string `koanf:"password"`
SSLMode string `koanf:"ssl_mode"`
MaxOpenConns int `koanf:"max_open_conns"`
MaxIdleConns int `koanf:"max_idle_conns"`
ConnMaxLifetime int `koanf:"conn_max_lifetime"`
EncryptionKey string `koanf:"encryption_key"`
SubscriptionTokenEncryptionKey string `koanf:"subscription_token_encryption_key"`
SecretEncryptionKey string `koanf:"secret_encryption_key"`
// SecretKeyFile is the path to a 32-byte binary key file used for secret encryption.
// Honoured in both demo and non-demo mode when neither SecretEncryptionKey nor
// EncryptionKey is set. In demo mode the file is auto-generated on first startup and
// reused on subsequent restarts; in non-demo mode the file must already exist (a missing
// or unreadable file is fatal). Matches the gateway controller key-management pattern.
SecretKeyFile string `koanf:"secret_key_file"`
}
Only SecretEncryptionKey is supported via file (all the above encryption keys should support it)
Or a shared encryption key.
Please select the area the issue is related to
Area/Management (Management API or Management Portal UI)
Please select the aspect the issue is related to
Aspect/API (API backends, definitions, contracts, interfaces, OpenAPI)
Description
Rethink the Config for Encryption
Only
SecretEncryptionKeyis supported via file (all the above encryption keys should support it)Or a shared encryption key.