【原创】ldap3.core.exceptions.LDAPInvalidValueError: value cannot be a sequence 报错解决办法

发布于 2019-09-06  336 次阅读


环境:

ldap3库
CentOS系统
python 3.6

问题:

通过ldap3库更新AD用户时,报错:ldap3.core.exceptions.LDAPInvalidValueError: value cannot be a sequence
报错的意思是:值不能为序列

再看看我要更新的数据:
{'name': '张三', 'telephoneNumber': '13910304628', 'mobile': '13910304628', 'streetAddress': ('北京',)}
从数据可以看到streetaddress的value值是一个集合,集合也是一个序列,所以就报错了。

解决办法:

把要更新的数据,进行排查,发现数据在生产时,streetaddress被转换成了集合,然后把代码修改了一下。

提醒:

Ldap3库在新建、更新AD用户时,用户的属性值都得是有值且符合ldap3操作AD的要求,问题就在于,ldap3没有明确说名AD用户属性值的类型,所以这个只能遇到报错,自己研究并解决。

欢迎大家访问我的博客:blog.bigyoung