Os usuários de uma importação OTRS devem ser mesclados com uma importação LDAP anterior.
Os usuários parecem estar parcialmente atualizados, mas não todos, especificamente parece que a importação LDAP converte tudo para minúsculas, enquanto a importação OTRS mantém o login como está.
Podemos ver que os usuários com userPrincipalName como "Givenname. [email protected] " são criados, enquanto "givenname. [email protected] " é atualizado. O usuário OTRS no primeiro, entretanto, ainda é criado com um login em minúsculas.
Também posso ver que no primeiro caso há um número de 3 dígitos anexado ao login, como
OTRS: [email protected] -> zammad: givenname. [email protected]
Este comportamento é o mesmo para todos os usuários.
_thread # -: add User.find_by (login: [email protected]) _
os usuários com todas as letras minúsculas são assim
_thread # -: update User.find_by (login: [email protected]) _
quando procuro o primeiro usuário no zammad usando
_User.find_by (email: '[email protected]') _
eu não encontro o usuário, se eu pesquisar com letras minúsculas
_User.find_by (email: '[email protected]') _
eu o encontro, mas o login é assim
login: "ggggg. [email protected] "
Talvez eu tenha resolvido o problema, (pelo menos para mim)
Eu mudei 2 arquivos em lib / import / otrs
user.rb
customer_user.rb
em cada um dos arquivos eu adicionei este
_mapped[:login].downcase!_
abaixo da linha 70. (estritamente não necessário no user.rb, eu acho, mas não sou um desenvolvedor)
Isso não deve ser um problema com instalações apoiadas por ldap; com outros back-ends, isso pode significar que o usuário tem que fazer o login como "pato Donald" em vez de "Pato Donald" se eu ver isso corretamente.
então, por enquanto, isso é mais uma solução suja, mas talvez alguém com mais habilidades de desenvolvimento possa fazer isso melhor?
Olá @smalchow - Obrigado por sua análise abrangente do problema. Na verdade, Zammad (tenta, como podemos ver) reduz todos os identificadores (como, por exemplo, o e-mail) para evitar exatamente esse problema. Portanto, sua solução está correta. Esta é uma solução alternativa para bancos de dados com distinção entre maiúsculas e minúsculas para evitar consultas personalizadas / informadoras.
Seria ótimo se você pudesse criar uma solicitação de pull para isso!
Ahhrrg .... Isso já me incomodou 7 anos atrás: D
https://bugs.otrs.org/show_bug.cgi?id=4732
Ok deixa pra lá. Entendi. dicas. :)
@thorsteneckel então não há mais minitestes e todos os novos testes seriam rspec?
Sim 🎉
Consertado graças ao pull request # 1677 por @muhammadn 🚀
Comentários muito úteis
@thorsteneckel então não há mais minitestes e todos os novos testes seriam rspec?