我在python中使用ldap3模块在python中创建和禁用AD中的用户。当我使用以下代码创建用户时,
from ldap3 import *
import ssl
tls_configuration = Tls(validate=ssl.CERT_REQUIRED,
version=ssl.PROTOCOL_TLSv1)
tls_configuration.validate = ssl.CERT_NONE
s = Server('xxxxxx:389',use_ssl=False, get_info=ALL)
c=Connection(s,user='x\Administrator',password='x',
check_names=True,lazy=False,
raise_exceptions=False)
c.open()
c.bind()
c.add('cn=SubhasisB,ou=gssd users,dc=adldap,dc=com','User')
使用上述命令创建的用户显示已禁用,属性userAccountControl设置为546且没有密码。当我尝试将属性修改为512以启用用户时,我收到错误
```
c.modify('cn = SubhasisB,ou = gssd users,dc = adldap,dc = com',{'unicodePwd':[(MODIFY_REPLACE,['xxxxx'])]}) 假
c.result {'result':53,'description':'unwillingToPerform','dn':'','message':'0000001F:SvcErr:DSID-031A11E5,问题5003(WILL_NOT_PERFORM),数据0 \ n \ x00',' referrals':None,'type':'modifyResponse'}```
为
获取相同的错误 c.modify('cn=SubhasisB,ou=gssd users,dc=adldap,dc=com', {'userAccountControl': [(MODIFY_REPLACE, ['512'])]})
但是,如果我在Windows服务器中手动创建用户,我可以通过使用ldap3将userAccountControl设置为514来禁用它。