如何通过modify_replace和ldap3修改通用时间属性?
如果我尝试:
reset_time = datetime.datetime(1970,1,1, tzinfo=datetime.timezone.utc)
c.modify(dn, {'myGeneralizedTimeAttribute': [(MODIFY_REPLACE, [reset_time])]})
我收到以下python错误:TypeError: 'datetime.datetime' object is not iterable
然后我尝试:c.modify(dn, {'myGeneralizedTimeAttribute': [(MODIFY_REPLACE, [(reset_time,)])]})
并获取TypeError: 'datetime.datetime' object cannot be interpreted as an integer
之后我将datetime转换为timestamp并获得ldap错误:
{'result': 19, 'dn': '', 'type': 'modifyResponse', 'message': 'NDS error: syntax violation (-613)', 'description': 'constraintViolation', 'referrals': None}
我认为解决方案非常简单,但我没有看到它......
答案 0 :(得分:0)
通过将 reset_time 替换为字符串来解决问题:
reset_time = '19700101010000Z'