对特定类型对象的特定属性设置权限
特定于属性的权限可与特定于对象的继承结合使用,以提供强大而详细的管理委派。 可以设置特定属性的对象可继承 ACE,以允许指定用户或组读取和/或写入容器中指定类别子对象的特定属性。 例如,可以在组织单位 (OU) 上设置 ACE,使某个组可以读写该组织单位中所有用户对象的电话号码属性。
设置特定于属性的对象可继承 ACE
- 将 IADsAccessControlEntry.AceType 设置为 ADS_ACETYPE_ACCESS_ALLOWED_OBJECT 或 ADS_ACETYPE_ACCESS_DENIED_OBJECT。
- 将 IADsAccessControlEntry.ObjectType 设置为属性的 schemaIDGUID。 例如,telephoneNumber 属性的 schemaIDGUID 为 {bf967a49-0de6-11d0-a285-00aa003049e2}。
- 将 IADsAccessControlEntry.AceFlags 设置为 ADS_ACEFLAG_INHERIT_ACE。
- 将 IADsAccessControlEntry.InheritedObjectType 设置为可继承 ACE 的对象类的 schemaIDGUID。 例如,user 类的 schemaIDGUID 为 {bf967aba-0de6-11d0-a285-00aa003049e2}。
- 将 IADsAccessControlEntry.Flags 设置为 ADS_FLAG_OBJECT_TYPE_PRESENT 和 ADS_FLAG_INHERITED_OBJECT_TYPE_PRESENT。
重要
将 ADS_ACEFLAG_INHERIT_ACE 设置为让 ACE 被继承。 此外,如果此 ACE 适用的对象类型与指定 ACE 的容器的对象类型不匹配,则应设置 ADS_ACEFLAG_INHERIT_ONLY_ACE。 如果未这样做,ACE 也将在容器上生效,并会授予意想不到的权限。
有关可用于设置此类 ACE 的详细信息和代码示例,请参阅在 Directory 对象上设置 ACE 的示例代码。
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈