2

ローカル ネットワーク上の私のアプリでは、すべてのユーザーがこのコードを使用して共有フォルダーにディレクトリを作成する必要があります。test1 は、たとえば、ユーザーのフォルダーの 1 つの名前です。

DirectoryInfo di = new DirectoryInfo(@"\\Server\Test\test1");
DirectorySecurity ds=new DirectorySecurity();
ds.SetAccessRule(new FileSystemAccessRule(Enviroment.Username,
                       FileSystemRights.FullControl, AccessControlType.Deny)); 
di.Create(ds);

ドメインの管理者が任意のユーザーからすべてのディレクトリを読み込もうとすると、次のエラーが発生しました。

不正な操作を試みた

管理者が実行するコードは次のとおりです。

DirectoryInfo di = new DirectoryInfo(@"\\Server\Test\test1");
DirectorySecurity ds=new DirectorySecurity();
ds.SetAccessRule(new FileSystemAccessRule(Enviroment.Username,
                       FileSystemRights.FullControl, AccessControlType.Allow)); 
di.SetAccessControl(ds);

私の間違いはどこですか?
前もって感謝します。

4

1 に答える 1

4

以下のように試してみてください

        // Create a new DirectoryInfo object.
        DirectoryInfo dInfo = new DirectoryInfo(@"\\Server\Test\test1");

        // Get a DirectorySecurity object that represents the 
        // current security settings.
        DirectorySecurity dSecurity = dInfo.GetAccessControl();

        // Add the FileSystemAccessRule to the security settings. 
        dSecurity.AddAccessRule(new FileSystemAccessRule(Enviroment.Username,
                                                        FileSystemRights.FullControl, AccessControlType.Allow));

        // Set the new access settings.
        dInfo.SetAccessControl(dSecurity);
于 2011-05-10T07:35:15.363 に答える