コンテキストに応じた適切なエンコーディング (HTML, SQL, JavaScriptなど) によるインジェクション対策

定義

コンテキストに応じた適切なエンコーディング (HTML, SQL, JavaScriptなど) によるインジェクション対策は、永続データの整合性と検索特性を管理する仕組みである。対象、前提、入力、結果を区別して捉える。

仕組みと具体例

注文と在庫更新を一つのトランザクションにし、競合時の分離レベルを選ぶ。実際に適用するときは、通常時だけでなく境界値、失敗、並行実行、外部依存の変化が結果へどう影響するかを追跡する。

実践と検証

実行計画と制約を確認し、N+1、長時間ロック、無制限クエリを監視する。期待する結果を観測可能な条件で記述し、最小の例から始めて異常系を追加する。自動化する場合も、基準自体が妥当かをレビューする。

トレードオフ

この手法の導入は一貫性と再現性を高める一方、設定、抽象、運用対象を増やす場合がある。適用範囲を広げる前に、解決するリスクと維持コストを比較する。例外は暗黙にせず、理由、期限、代替策を記録する。