Closed helopng closed 1 year ago
您好 @helopng👋,我已收到您的反馈,我将安排时间考虑您提交的信息并进行回复。-- 这条信息是由自动回复的机器人发出的。
Hello @helopng. I have received your feedback, and I will arrange time to consider the information you submitted and reply. -- This message is sent by an automatic reply robot.
这个状态表示用户在MySQL与ldap之间同步的状态,有定时任务会检测,如果总是变成2,说明你这个用户实际在ldap中不存在,需要点击右侧的上传按钮,将用户同步到ldap中。
我装了apache的LDAP工具, 连接LDAP这些用户确实存在了, 不知为何那个状态判断不对, 我fork重构建了一版把重置密码判断syncStates那里删了, 如果找不出问题我打算用这个更新到生产环境去...
我前面是点了批量同步,提示成功的, 然后就那一分钟左右,点忘记密码邮件可以发送成功, 也就是定时任务运行后就又不行了
我又试了下右侧的同步按钮, 提示用户已存在了, 是不是判断用户那里有一丢丢问题, 还是我的ldap? mysql的问题
既然都已经调试到这一步了,那何不打印一下,看看为啥会有这个报错提示呢,兴许是代码的bug,也有可能的确是你那边环境的因素
找到问题了 我的OpenLDAP是从别的文章那看的, 对比了下步骤差不多就复制那篇创建了, 然后人员People那个ou创建成了大写的P 输出日志里sqlUser的ou是people, Openldap应该没区分大小写,所以能同步过去, 但是一对比后sqlUser是区分大小写的导致用户UserDN不一样, 状态又被改回去...
这个people你在文档里大写加粗高亮说明下吧
Question Report
你使用了哪个版本? | Which version did you use?
http://ldapdoc.eryajf.net/pages/5769c4/#%E5%89%8D%E8%A8%80 安装文档中使用tar包部署 v0.5.9
预期行为 | Expected behavior
用户点击忘记密码可以完成密码修改
实际行为 | Actual behavior
用户点击忘记密码, 报错提示用户已离职或未同步
原因分析(如果可以) | Cause analysis (if possible)
同步用户后提示同步成功,然后选已同步可以查询到当前这些用户,syncState=1, 但是过两分钟后所有已同步用户又会变成未同步,syncState=2, 此时用户点击忘记密码无法进行密码重置
同步时的后台日志
在测试环境中尝试了v0.5.10, 和正式环境是同样现象, 即使在数据库手动修改syncState=1, 过一会还会变回去2
问题重现步骤 | Steps to reproduce the problem