2016-11-06 16 views
7

.NET Coreのファイルのアクセス許可を変更しようとしています。 しかし、FileInfoにはSetAccessControlがもう存在しないようです。.NETコアのファイルアクセス制御を変更する方法

// Create a new FileInfo object. 
FileInfo fInfo = new FileInfo(FileName); 

// Get a FileSecurity object that represents the 
// current security settings. 
FileSecurity fSecurity = fInfo.GetAccessControl(); 

// Add the FileSystemAccessRule to the security settings. 
fSecurity.AddAccessRule(new FileSystemAccessRule(Account, 
               Rights, 
               ControlType)); 

// Set the new access settings. 
fInfo.SetAccessControl(fSecurity); 

目的は、ファイルの現在の所有者(WindowsまたはUnix固有の機能ではない)に実行権を追加することです。

.NET Coreでこれを行う方法に関する手がかりはありますか?

+0

アクセス制御システムが異なるUnixでは、どのようなことが起こると思いますか?またはこれはWindows専用の.Netコアアプリケーションですか? – svick

+2

@svick私は共通のサブセットのようなものを期待しています。私はMonoで何が完了したのか確認します。 – Fab

答えて

6

FileSecurityクラスは.NETコアのSystem.IO.FileSystem.AccessControlパッケージに含まれています。 File.GetAccessControlメソッドが存在しないため、FileSecurityインスタンスをインスタンス化する必要があります。

+1

新しい.NET Core 2.0ライブラリの作成には、このアセンブリは含まれません。 'System.IO.FileSystem.AccessControl'をNuGetパッケージとして追加する必要があります。 – Scyssion

+0

@Scyssionはい、私のコメントはそう言います。 – Patrik

関連する問題