[C#] ディレクトリのアクセス権を削除する

C#でディレクトリのアクセス権を削除する方法を紹介します。
今回は、 こちらの記事に記載されている方法でディレクトリに追加したアクセス権を削除します。
対象となるディレクトリのみにアクセス権を追加した場合はこの記事で紹介する方法でアクセス権を削除できますが、アクセス権が親フォルダから継承されている場合はこの方法では削除できません。継承されているディレクトリのアクセス権を削除する方法は こちらの記事になります。

コード例


private void button_Remove_AccessRights(object sender, EventArgs e)
{
  string filePath = @"c:\\develop\dev";
  FileSecurity security = File.GetAccessControl(filePath);
  security.PurgeAccessRules(new NTAccount("everyone"));
  File.SetAccessControl(filePath, security);
}

説明

FileSecurity security = File.GetAccessControl(filePath);
にて、指定したディレクトリのセキュリティ情報(ファイルセキュリティオブジェクト)を取得します。

security.PurgeAccessRules(new NTAccount("everyone"));
にて、セキュリティ情報から"everyone"のアクセス権を削除します。

File.SetAccessControl(filePath, security);
にて、指定したディレクトリに"everyone"のアクセス権を削除したセキュリティ情報(ファイルセキュリティオブジェクト)を適用します。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值