在我的 .NET Core 单元测试项目中,我试图创建一个文件夹,然后限制访问权限。
到目前为止,我实现了此代码的 Windows 版本:
DirectoryInfo dirInfo = Directory.CreateDirectory(DriveManager.LogicalDrive + ":\\testDir");
DirectorySecurity dirSecurity = new DirectorySecurity(dirInfo.FullName, AccessControlSections.All);
var securityId = System.Security.Principal.WindowsIdentity.GetCurrent().User;
FileSystemAccessRule rule = new FileSystemAccessRule(securityId, FileSystemRights.ListDirectory, AccessControlType.Deny);
dirSecurity.AddAccessRule(rule);
dirInfo.SetAccessControl(dirSecurity);
显然WindowsIdentity.GetCurrent().User
不适用于 Unix 类型的操作系统。我不确定其他功能是否也可能不兼容。
您能否提出通用解决方案(适用于 Windows 和 Unix 类型的操作系统)?
预先感谢您的支持。