来自OTRS导入的用户应与先前的LDAP导入合并。
用户似乎已部分更新,但不是全部更新,特别是看起来LDAP导入将所有内容都转换为小写,而OTRS导入则使登录保持原样。
我们可以看到通过UserPrincipalName用户如“给定名称。 [email protected] ”的创建,而“给定名称。 [email protected] ”被更新。 但是,第一个中的OTRS用户仍然使用小写登录名创建。
我也看到在第一种情况下,在登录名后面附加了3位数字,例如
OTRS:[email protected]> zammad:Givenname。 [email protected]
对于所有用户,此行为都是相同的。
_thread#-:添加User.find_by(登录名:[email protected])_
所有小写字母的用户都是这样
_thread#-:更新User.find_by(登录名:[email protected])_
当我使用以下内容在zammad中搜索第一个用户时
_User.find_by(电子邮件:“ [email protected]”)_
如果我用小写字母搜索,我找不到用户
_User.find_by(电子邮件:“ [email protected]”)_
我找到他,但登录名是这样的
登录名:“ ggggg。[email protected] ”
也许我解决了这个问题,(至少对我来说)
我在lib / import / otrs中更改了2个文件
user.rb
customer_user.rb
在我添加的每个文件中
_mapped[:login].downcase!_
在第70行以下。(我认为在user.rb中完全没有必要,但我不是开发人员)
对于ldap支持的安装,这应该不是问题,对于其他后端,这可能意味着,如果我正确看到此信息,则用户必须以“唐老鸭”而不是“唐老鸭”的身份登录。
所以现在这更像是一个肮脏的修补程序,但是也许拥有更多开发技能的人可以使它变得更好?
@smalchow ,您好:感谢您对问题的全面分析。 实际上,Zammad(尝试一下我们可以看到)对所有标识符(例如电子邮件)都进行了小写化处理,以避免出现此问题。 因此,您的解决方案是正确的。 这是区分大小写的数据库的一种解决方法,以避免自定义/性能不佳的查询。
如果您可以为此创建拉取请求,那就太好了!
Ahhrrg ....这已经困扰了我7年前:D
https://bugs.otrs.org/show_bug.cgi?id=4732
好吧,那算了。 知道了。 提示。 :)
嗨@muhammadn-很高兴您回来back您可以在此处检查我们的OTRS的RSpec测试: https :
@thorsteneckel,所以不再有minitests了,所有新测试都将是rspec吗?
是的🎉
由于@ muhammadn🚀的拉取请求#1677
最有用的评论
@thorsteneckel,所以不再有minitests了,所有新测试都将是rspec吗?