首页 文章

如何使用C获取特定用户的文件夹的ACL权限?

提问于
浏览
0

首先,让我问一下,在Windows-NT上基于每个用户进行ACL权限更改?我问的原因是因为accesschk实用程序似乎将用户名作为参数,同时还需要一个对象来检查(在我的情况下是文件夹路径) .

在任何一种情况下,如何获取具有C的特定Windows用户的文件夹的ACL权限(this stuff)?我假设我需要调用GetNamedSecurityInfo但是如何从用户帐户中获取权限?

2 回答

  • 1

    “在任何一种情况下,如何为具有C的特定Windows用户获取文件夹的ACL权限(此内容)?”

    DACL返回一个可用于从中提取值的指针 .

    我有一个你可以看的演示程序,它基本上从给定的文件或目录加载DACL信息 . 该页面的链接如下所示 .

    Sample GetNamedSecurityInfo() call

    “我假设我需要调用GetNamedSecurityInfo但是如何从用户帐户中获取权限?”

    您可以通过调用GetAce()来遍历列表,并从每个项目中提取域/用户名 .

    再次,请参阅我用C编写的示例代码 .

  • 1

    ACL的重点在于用户之间的差异 . 他们是访问控制列表;它们控制哪些用户可以访问资源 .

    你是对的 GetNamedSecurityInfo . 它可以为您提供两种ACL,即SACL和DACL . SACL处理文件访问审核(很少使用),DACL具有权限 . 您可以使用 GetExplicitEntriesFromAcl 分解返回的DACL .

相关问题