访问控制和写入操作

如果调用方没有足够权限,属性修改则会失败。 对于批处理修改多个属性的写入操作,如果调用方对单个修改的属性缺少必要权限,整个操作则会失败。 例如,可进行多个 IADs::Put 调用来设置对象的多个属性。 但是,当调用 IADs::SetInfo 以将新数据从本地缓存写入目录时,如果调用方对所有已修改的属性没有写入访问权限,SetInfo 则会失败。 同样,如果调用方无权访问所设置的所有属性,IDirectoryObject::SetObjectAttributes 方法则无法设置任何属性。 因此,仅当确认所有修改均会成功时,才应对多个修改操作进行批处理。 若要确定调用方能修改的目录对象的属性,请读取该对象的 allowedAttributesEffective 属性。

如果调用方没有足够的权限来修改属性,则可能会返回以下返回代码:

E_ADS_PROPERTY_NOT_SET E_ADS_PROPERTY_NOT_MODIFIED