セキュリティの要件が少し異常です。ベストプラクティスまたは少なくとも脆弱ではないアプローチについてのアドバイスを探しています。ASp.NET MVC EF4 SQLテーブルまたはフィールドレベルのセキュリティ
シナリオ:イントラネットシステム。多くの関連エンティティに関するデータはプライベートと見なされます。これは、システムの未公開部分として知られています。特定のユーザーだけがこのデータにアクセスできます。いくつかの段階で、ユーザーはこのデータから選択し、いくつかのレコードをマークし、それらを「公開」側に公開します。公開側に公開されたデータは、未公開側から削除されます。システムユーザーの大半は、公開された側のレコードで作業することができます。
これは親レコードのboolフィールドのように聞こえますが、公開されているか未公開であるとフラグされていますが、置き換えようとしているシステムがどのように問題に取り組んでいるかを説明します。パブリッシュされていないパブリッシュされたデータを別々のテーブルに保存し、別々のサーバードライブに保存し、別々のテープにバックアップします。ネットワーク権限は、公開されたユーザーが未公開データを取得できないようにします。ソフトウェアは権利も管理しますが、それが間違ったり、プログラマーが間違いを犯したりすると、間違ったデータにアクセスすることはできません。潜在的にこのデータをブローさせる可能性のあるシステム管理者は、肯定的な審査済みのセキュリティ許可を持っています。
私が探しているのは、これを実現するMVC、EF4、SQLでアーキテクチャを達成する方法に関するアドバイスです。ある極端な場合、私は2つのSQLデータベース、異なる権限を持つ2つのシステムを構築します。潜在的にweb.configに含まれる相違点と同じで、実際は同じコードベースです。スケールの反対側では、コントローラメソッドを持つテーブルのフラグがマークアップされ、アクセスを拒否しました。 (プログラマーが検索クエリを駄目にして間違ったカテゴリのデータを返すと、それが建物の外に出てしまい、人間の犠牲になってしまう可能性があるからです。ヒステリー)
大変申し訳ございません。ベストプラクティスまたはこれにアクセスする方法に関するその他のアドバイス
? :) – RPM1984
それは王室に関連しています。 – Andiih