摘要: 修改DACL 转自:http://mickorguo.blog.163.com/blog/static/621948020074122179787/建立安全对象牵涉到与需要实作服务一样多的存取控制。您可以实作许多服务,而从来不用修改现存对象的安全性,这是令人惊异的。当然,某些程序必须处理已经拥有应用安全性的现存对象。在此种情况下,您的软件必须能够读取及修改对象的DACL。以下是您可以采取的步骤:撷取您要修改之对象的DACL。假如您正在移除ACEs,在DACL中搜寻这些ACEs并加以删除。收集您将加入ACEs的信任成员SIDs。建立您将加入的ACEs。在DACL中搜寻是否有与您将加入相同的ACE 阅读全文
posted @ 2013-02-27 12:25 csafu 阅读(172) 评论(0) 推荐(0)
摘要: 存取权利 存取权利起先看起来似乎是个需要理解的简单观点,但是有某些重点可能不够明显。要了解存取权利之细微差别的最好方法是讨论它们被使用在哪里并检查每个群组。让我们先复习已经知道的部分:系统在代表信任成员的安全对象上执行任何安全性作业之前,信任成员必须持有存取权利的组合。 所有存取权利都被封装成一个32位元的存取遮罩(请察看图10-2)。 存取权利被分割成叁类:通用权利(3位元1-28)、标准权利(位元22-16)及特定权利(位元15-0)。 存取遮罩中的两个「奇数」位元不符合存取权利群组:即稽核位元及最大的允许位元。 截至目前为止,我们已经讨论过储存在ACE中的存取遮罩之存取权利,它只是交易处 阅读全文
posted @ 2013-02-27 12:18 csafu 阅读(113) 评论(0) 推荐(0)
摘要: 表10-12对象ACE标记成员的值值叙述ACE_OBJECT_TYPE_PRESENT指出ObjectType成员存在于对象ACE结构中ACE_INHERITED_OBJECT_TYPE_PRESENT指出InheritedObjectType成员存在于对象ACE结构中ObjectType及InheritedObjectType都是GUIDs。假如您不熟悉GUIDs,可以在《Platform SDK》文件或《Inside COM》(Dale Rogerson, Microsoft Press, 1997)找到这个主题的完整讨论。就我们所需目标而言,您只需要懂得GUID是一个128位元的值,几乎 阅读全文
posted @ 2013-02-27 12:15 csafu 阅读(67) 评论(0) 推荐(0)
摘要: 存取控制 转自:http://mickorguo.blog.163.com/blog/static/6219480200741214941206/Microsoft Windows 2000提供了广泛且具高度弹性的安全功能,在现今市场上没有其他的作业系统能在安全对象上提供细微的控制。而Windows实作了存取控制部份,所以可以达到如此重要的程度。表10-13的内容。特殊权利特殊权利只应用在特殊类型的安全对象上。举例来说,某个文件对象的特殊权利可能会是新增资料或从文件中读取资料的权利。通用权利通用权利指某个对象的标准及特殊权利的集合。系统定义了四个通用的权利:读取、写入、执行及所有。每个通用权利 阅读全文
posted @ 2013-02-27 11:23 csafu 阅读(146) 评论(0) 推荐(0)
摘要: 您在本章稍早已学习到系统定义的叁种存取权利类型:即标准、特殊及通用权利。属于ACE一部份的存取遮罩是个32位元的值,每个对象的可能存取权利都与一个位元相对应。说明因为每个存取权利皆对应到ACE存取对应中的单一位元,所以一个个别的ACE可被用来指出信任成员帐户的多重存取权利。存取遮罩被每个Windows系统支援的叁种存取类型划分成数个区段。图10-2即显示了这些位元及其用途。图10-2 存取遮罩格式ACEs指出了存在于父系—子系关系层级中的系统及私人对象之继承的规则。当我们开始有纲领的讨论ACLs操作时,我将会涵盖更详细的继承内容;然而,现在了解被允许的继承类型是有帮助的。以下的列表说明了这些可 阅读全文
posted @ 2013-02-27 11:20 csafu 阅读(94) 评论(0) 推荐(0)
摘要: 表10-7安全对象的特定安全函数尽管表10-7中每个对象的建立对象函数不同,只有少数的函数被要求设定及取得系统中所有安全对象类型的安全性资讯。说明有为特定对象类型取得及设定安全性的其他函数,例如GetFileSecurity及SetKernelObjectSecurity。然而,由于GetFileSecurity及SetKernelObjectSecurity等函数变得更容易使用,而且在Windows 2000中提供了更多完整的继承模组实作对象,使得特定函数不再是取得及设定对象安全性的惯用方式。可能的话,您应该使用这些函数。读取对象的安全性资讯 只有读取对象的安全性资讯不为常见的任务,通常您会 阅读全文
posted @ 2013-02-27 11:17 csafu 阅读(146) 评论(0) 推荐(0)
摘要: 转自:http://mickorguo.blog.163.com/blog/static/62194802007412282866/ACL_SIZE_INFORMATION结构最常与GetAclInformation一起使用,其定义如下:typedef struct _ACL_SIZE_INFORMATION {DWORD AceCount;DWORD AclBytesInUse;DWORD AclBytesFree;}ACL_SIZE_INFORMATION;以下的程序代码片段撷取了C:\Test\Text.txt文件之DACL中的ACES数量。PSECURITY_DESCRIPTOR pS 阅读全文
posted @ 2013-02-27 11:14 csafu 阅读(112) 评论(0) 推荐(0)
摘要: 转自:http://mickorguo.blog.163.com/blog/static/6219480200741221325431/在我们继续前,必须再提一个预设安全性的重点。假设您要处理的对象,其安全性是继承而来的(例如登录机码或文件),则预设安全性只适用于ACEs,而非从父对象继承而来的对象。登录及文件系统阶层中,其预设的ACEs是被继承的,所以预设的安全性在一般的实例中并不适用。您现在已经熟悉了所有存取权利的类型,以及包含这些权利的ACE及ACL类型,所以您已经拥有读取及诠释系统中任何对象安全性的所有必要工具。AccessMaster范例应用程序 AccessMaster范例应用程序 阅读全文
posted @ 2013-02-27 10:29 csafu 阅读(205) 评论(0) 推荐(0)