Parece que nossa instância do Discourse agora está importando o nome de usuário de todos como uma espécie de variante de “user####”, quando antes importava como uma variante do endereço de e-mail deles (ou seja, se o nome de usuário era “tonysmith1@aol.com”, ele o transformava em “tonysmith1”). Há alguma maneira de alterar isso?
Além disso, é possível importar informações de perfil de um usuário no Drupal para preencher o perfil de um usuário no Discourse? Ou seja, título, nome da empresa, etc.
Isso é resultado de uma mudança recente. Anteriormente, se um nome de usuário não fosse fornecido no payload do SSO, um nome de usuário seria criado com base no endereço de e-mail do usuário. O risco de fazer isso é que isso potencialmente expõe os endereços de e-mail dos usuários. Se nenhum nome de usuário for fornecido no payload do SSO, o Discourse agora define o nome de usuário como “user” com um número anexado para que os nomes de usuário sejam únicos.
A solução para isso é fornecer um nome de usuário no payload do SSO. Se você realmente quiser criar nomes de usuário com base nos endereços de e-mail dos usuários, deve dividir o endereço de e-mail no caractere @ e enviar a parte do nome do endereço como o nome de usuário.
Acredito que você esteja usando o DiscourseConnect para SSO. Isso permite definir vários parâmetros no payload do SSO. Dê uma olhada nas listas ACCESSORS e BOOLS no topo deste arquivo para ver quais parâmetros podem ser definidos por meio do payload do DiscourseConnect: https://github.com/discourse/discourse/blob/main/lib/single_sign_on.rb. Você verá que tanto bio quanto title podem ser definidos dessa forma.