2012-05-09 9 views
5

管理者権限のあるアプリケーションがあり、システム管理者だけがアクセスできるディレクトリに重要なファイルを保存する必要があります。管理者のみアクセス可能なディレクトリを作成する

これはおそらく次の呼び出しと関係がありますが、設定方法がわかりません。

Directory.CreateDirectory(@"C:\SomePath", new AccessControl.DirectorySecurity() { AccessRightType = ?, AccessRuleType = ?, AuditRuleType = ?); 

同じことを達成するためのより良い方法があれば、私に知らせてください。ありがとう。

編集:hereが見つかりました。他の提案がある場合に備えて、質問を開いたままにしておきます。

+0

代わりにファイルを暗号化しないでください。 – MatteKarla

+0

私は暗号化が行く方法だろうと言います。 –

+0

ファイルはすでに暗号化されています。必要なアクセス制御は、規制を満たすことです。代替案はありません。 –

答えて

5

が見つかりましたhere

FileSystemAccessRule administratorRule = new FileSystemAccessRule("Administrators", FileSystemRights.FullControl, InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit, PropagationFlags.None, AccessControlType.Allow); 

FileSystemAccessRule guestRule = new FileSystemAccessRule("Guest", FileSystemRights.CreateDirectories | FileSystemRights.CreateFiles, AccessControlType.Allow); 

DirectorySecurity dirSec = new DirectorySecurity(); 
dirSec.AddAccessRule(administratorRule); 
dirSec.AddAccessRule(guestRule); 

Directory.CreateDirectory(@"C:\GuestTemp", dirSec); 
関連する問題