1

当我尝试在创建成员期间传递 JS dict 中的 memberOf 字段时,甚至在通过之后对其进行编辑时

const change = new Change({
    operation: 'replace',
    modification: {
        [field]: value
    }
});

return new Promise((resolve, reject) => {
    client.modify(dn, change, err => {
        client.destroy();
        if (err) {
            reject(err.message);
        }
        resolve();
    });
});

它只是抛出一个错误

(节点:5136)UnhandledPromiseRejectionWarning:0000209A:SvcErr:DSID-031A107A,问题5003(WILL_NOT_PERFORM),数据0

那么,我如何更改 AD 中的成员资格?

作为一个附带问题,我在哪里可以找到使用 ldapjs 和好的文档的示例?官方网站有点乏善可陈

4

1 回答 1

3

您无法更改该memberOf属性。它是一个链接属性(也称为“反向链接”)。该值是根据在其member属性中包含用户的组计算的。

因此,要将用户(或任何对象)添加到组中,您必须更改member组的属性。

AD 用户和计算机应用程序并没有说明这一点,因为它允许您在用户属性的“成员”选项卡上将人员添加到组中。但实际上,它是member在后台修改组的属性。

于 2019-12-04T15:47:00.767 回答