1

C# マルチユーザー クライアント サーバー アプリケーションと、データベースとして SQL Server 2008 Express があるとします。これは顧客の PC にインストールするアプリケーションであり、会社で働くすべての人がアクセスできます。つまり、ファイルへの物理的なアクセスは無料で、ファイルを自分のマシンに.mdf簡単にコピーして添付することができます。.mdfそして、私が開発したすべての DB 構造とストアド プロシージャのコードを表示します。

この問題に関する多くの情報を読み、Windows の無料の EFS (暗号化ファイル システム) を使用するよう指示しました。その結果、このために特別に作成した特定のWindowsユーザーアカウントでファイルを暗号化.mdfし、ユーザーのパスワードを設定して、誰も私のユーザーとしてログオンしてファイルを復号化できないようにしました. すべて問題ありませんでしたが、顧客がログオンするユーザーはほとんど常にローカル管理者グループに属しているため、私のユーザーのパスワードを簡単にリセットし、私のユーザーとしてログオンしてファイルを復号化できるというジレンマに遭遇しました。ユーザーを管理者グループから除外できません。

誰でもこの問題を解決するのを手伝ってくれませんか? または、ファイルを復号化できないように、追加のユーザーを作成せずにファイルを復号化する可能性があり.mdfますか?

私は本当に助けていただければ幸いです!

4

2 に答える 2

2

EFS はランダムなファイル暗号化キー (FEK) でファイルを暗号化し、そのキーをユーザーに属する RSA キーで暗号化します ... この RSA キーは DPAPI によって保護されません ... システムがキー回復エージェントでセットアップされている場合、FEKキー回復エージェントの RSA キーに対しても暗号化されます (これはローカル管理者である可能性がありますが、キー回復エージェントなしに変更することもできます)

ローカル管理者がユーザーのパスワードを変更した場合、そのユーザーの DPAPI マスター キーは変更されず、古いユーザー パスワードで保護されたままになります。パスワードを変更しても、DPAPI マスター キーにアクセスすることはできません。ユーザーの秘密RSAキーにアクセスします...

ステーションがドメインのメンバーである場合、ドメイン コントローラには、DPAPI マスター キーの復号化を可能にする復号化キーがあります ...

于 2013-05-03T22:43:32.740 に答える