我可以成功绑定到AD LDAP,并修改和创建对象.
但是,如果我想更新或设置’Boolean’类型的属性,那么我会收到此错误:
00000057: LdapErr: DSID-0C090C3E,comment: Error in attribute conversion operation,data 0,v1db1
这是一段负责的Perl代码:
$rv = $ldap->add($dn,attr=> [ cn => [$u],objectClass => [ 'top','person','organizationalPerson','contact' ],displayName => "$u Mailing List",mail => $email,name => $u,mailNickname => $local,proxyAddresses => [ "SMTP:$email","smtp:$local\@$SERVERDOM",],givenName => $u,targetAddress => "SMTP:$email",internetEncoding => 1310720,msExchAddressBookFlags => 1,msExchModerationFlags => 6,msExchProvisioningFlags => 0,msExchHideFromAddressList => 'TRUE',msExchBypassAudit => 'FALSE',msExchMailBoxAuditEnable => 'FALSE',
]);
问题是最后三个属性;如果他们被评论出来,那么它是有效的.我尝试使用0和1而不是’TRUE’和’FALSE’,但我得到了相同的问题.似乎Net :: LDAP代码调用Convert :: ASN1的类型为string或int,这是不正确的;它应该使用’boolean’,但我看不出如何做到这一点.