これはおそらく少し漠然としていますが、SO のすべての人々の中に、以前にこの種の問題に遭遇したことがある人がいることを願っています。
背景
私たちのアプリケーションは、列車の順序を制御する C# / .NET サービスです。LINQ-to-SQL を使用して、鉄道網の状態と列車の注文を SQL Server 2005 データベースに格納します。
COTS ソフトウェア自体は「信頼」できないという安全要件があります。
要件したがって、リスクは「SQL サーバーまたはオペレーティング システムが静的データまたは動的データを変更する」
として捉えられます。
私たちの義務: 「データベースに保存されたデータは、最後のコミット以降に変更されていないことをデータ アクセス コードによって確認できるように、読み取り時に検証する必要があります。」
この要件を満たす「自動魔法の」方法を見つけ
たいと思います。
それに失敗すると、計算されたハッシュを格納するためにデータベースのすべてのテーブルに列を作成する必要なしに条件を満たす方法 (読み取り時に検証する必要があります)。