Deploy-time guard: reject a Sql DriverConfig blob carrying a connectionString key (FF-3) #498
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The 'a pasted literal connection string is never persisted' guarantee for the Sql driver is enforced only at the typed-DTO layer (SqlDriverConfigDto has no connectionString property + UnmappedMemberHandling.Skip drops it on read). That protects the read path, not the write path: if the AdminUI ever persists a raw-JSON DriverConfig blob (the fallback pattern unmapped drivers use), an operator pasting {"connectionString":"Server=...;Password=..."} would write a credential into the ConfigDb DriverConfig column even though the runtime factory never reads it back. Add a DraftValidator deploy-time check that rejects any persisted Sql DriverConfig blob carrying a connectionString key (defence-in-depth regardless of how the authoring UI evolves). Surfaced by the Task 14 (SqlDriverBrowser) review.