(とりわけ) いくつかのメディア ファイル (オーディオ、ビデオ、画像ファイル) を再編成する必要がある C#/WPF ビジネス アプリケーションを作成しています。アプリケーションは、現在のユーザーのセキュリティ コンテキストでも実行する必要があるため、ユーザーと同じアクセス権を持っています。
アプリケーションは、ファイルへの不正アクセスを阻止するために、メディアにアクセスできる唯一の場所である必要があります。私の最初の考えは、メディアを読み取り専用フォルダーに整理し、適切な権限を持つサービスを使用してファイルを読み取り専用フォルダーに移動することでした。
実際のアプリケーションには、ファイルを読み取り専用フォルダーに移動する権限はありません。これは、フォルダーへのアクセス権を持ってはならない現在のユーザーの権利を共有しているためです。
最初、私は Windows サービスを見ましたが、それと通信するのはセットアップするのが大変だと思いました。したがって、私はWCFサービスを使用していますが、サービスのセットアップが機能している間、「MoveFile」メソッドが1つしかないサービスを使用するのは少し無駄に思えます...アプリケーション(およびユーザー)は引き続きフォルダーから読み取ることができます。書き込まないでください。
ファイルを .NET の読み取り専用フォルダーに移動するためのより良い解決策はありますか? たとえば、ファイルを読み取り専用フォルダーに移動するときに、アプリケーションの一部を別のユーザーとして実行することは可能ですか?