Let a Search Value Stay a Value

A search box should select an asset, not rewrite the query or change whose records are visible. Keep values, query structure and permissions at separate boundaries.

14 sections · 4 questions · 2 coding challenges

1 / 14

Separating Query Structure from Supplied Data

BOTIE

Database applications needed to reuse a query while supplying different values. Driver parameter interfaces separate those values from SQL structure. That same boundary prevents a value containing SQL punctuation from being reinterpreted as part of the query when used correctly.

Database access control developed alongside shared data systems because syntactically valid queries can still access the wrong records. Parameter binding and authorisation solve different problems. Botie’s maintenance search needs both, even though our isolated browser database has no production users or server roles.

Sources for this history