【发布时间】:2011-04-23 18:33:25
【问题描述】:
我使用 Window 2003 服务器,我需要使用 C# 以编程方式获取有关安全文件夹的信息。
我想创建一个检查权限的工具。我需要获取文件夹的组、用户、权限和特殊权限,
C:\文档和设置\所有 用户\应用程序 数据\Microsoft\Crypto\RSA\MachineKeys
编辑:
以下是 GetSecurityDescriptorSddlForm 方法的示例代码。
public static string GetObjectPermission(string fullFolderName)
{
FileSecurity fileSecure = File.GetAccessControl(fullFolderName);
StringBuilder acer = new StringBuilder();
fileSecure.GetSecurityDescriptorSddlForm(AccessControlSections.All);
foreach (FileSystemAccessRule ace in fileSecure.GetAccessRules(true, true, typeof(NTAccount)))
{
acer.Append(ace.FileSystemRights + ":" + ' ' + ace.IdentityReference.Value + "\n");
}
return acer.ToString();
}
此示例代码将向您展示哪些 NTAccount 可以修改或读取文件夹,例如此功能。
如何获得组和特殊权限?
任何示例代码,建议?
【问题讨论】:
-
当您说“获得特殊权限”时,您是否只想知道他们是否拥有它们,或者它们实际上是什么?
-
我想知道他们是否真的有什么权限。
-
啊,好的。因为很容易判断他们是否会检查 Windows 资源管理器中的特殊权限框,因为它返回一个负数。但是将该数字的每个部分与权限相关联会稍微复杂一些。
标签: c# security permissions ntfs