狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

C#給用戶設置文件訪問權限,臨時訪問并恢復之前的權限

admin
2023年9月10日 14:59 本文熱度 965

using System.Security.AccessControl;

using System.Security.Principal;


public class Program

{

    public static void Main()

    {

        //能做做參考 

        List<FileSystemAccessRule> systemAccessRules = new List<FileSystemAccessRule>(); // 暫存以前的權限

        string path = "C:\\Test";

        AddDirectorySecurity(path, systemAccessRules);

        DirectoryInfo dInfow = new DirectoryInfo("C:\\Test");

        var files = dInfow.GetFiles(); // 測試能否讀取文件

        DirectorySecurity dSecurity = dInfow.GetAccessControl();

        // 恢復文件之前的權限

        foreach (var f in systemAccessRules)

        {

            dSecurity.RemoveAccessRuleAll(new FileSystemAccessRule(f.IdentityReference.Value, FileSystemRights.FullControl, AccessControlType.Allow));

            dSecurity.ModifyAccessRule(AccessControlModification.Add, f, out var ok);

        }

        dInfow.SetAccessControl(dSecurity);

        Console.ReadKey();

    }


   // 設置權限

    static void AddDirectorySecurity(string FileName, List<FileSystemAccessRule> files)

    {

        // 獲取目錄信息

        DirectoryInfo dInfo = new DirectoryInfo(FileName);


        // 獲取目錄控制信息

        DirectorySecurity dSecurity = dInfo.GetAccessControl();

        // 獲取目錄相關權限

        var c = dSecurity.GetAccessRules(true, true, typeof(NTAccount)).OfType<FileSystemAccessRule>();


        foreach (var g in c)

        {

            files.Add(g);

            // 不知道為啥直接修改不行 

            // g.IdentityReference.Value 就是用戶賬號

            dSecurity.RemoveAccessRuleAll(new FileSystemAccessRule(g.IdentityReference.Value, FileSystemRights.FullControl, AccessControlType.Deny));

            dSecurity.ModifyAccessRule(AccessControlModification.Add, new FileSystemAccessRule(g.IdentityReference.Value, FileSystemRights.Read, AccessControlType.Allow), out var ok);

            Console.WriteLine(ok);

        }

        // 設置權限

        dInfo.SetAccessControl(dSecurity);

    }

}


該文章在 2023/9/10 14:59:42 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved