A maioria dos campos de perfil já pode ser especificada durante o processo de SSO, o que é superútil. Do nome de usuário ao nome, da biografia e até mesmo o site foi adicionado no ano passado. No entanto, ainda existem algumas pequenas peculiaridades:
location parece estar ausente — de uma olhada rápida, parece ser o único campo óbvio que não é possível alterar usando SSO.
website pode ser especificado durante o SSO, mas, ao contrário da maioria (de todos?) dos outros campos de perfil do SSO, ele não possui uma configuração de site correspondente para permitir a substituição do valor local e impedir que o usuário o altere.
Acho que isso foi apenas negligenciado à medida que a base de código cresceu ao longo do tempo, pois não consigo pensar em nenhum motivo para essas exceções. Infelizmente, meu conhecimento de Ruby e Discourse não é suficiente para enviar um PR, mas queria reportar isso — talvez alguém tenha as habilidades técnicas para fazer isso.
Implementei as alterações para fazer os dois itens acima funcionarem. Ficarei feliz em contribuir de volta com o Discourse, mas não sei se há interesse em ter isso a montante? /cc @sam
Me avise antes que eu tenha que passar por todo o processo para enviar o PR. O código funciona, mas pode precisar de algumas revisões/mudanças, já que sou novo no Discourse.
Pode começar o PR para que você possa passar pelo processo de CLA, mas:
Isso não parece valer a pena se preocupar — outros campos nessa página, como a imagem de fundo do cartão do usuário, não estarão disponíveis nas plataformas SSO, então não há vantagem em consistência ao adicionar uma restrição para o campo de site.
Desculpe, não tenho certeza se entendi o que você quis dizer ali. Concordo que o fundo do cartão tem uso limitado em SSO (embora isso já esteja implementado). O campo website também é um campo SSO já implementado — eu apenas adicionei uma configuração sso_overrides_website, como as que já existem para nome de usuário, avatar, biografia etc., para que seja possível não permitir alterações locais e fazer com que o valor do SSO tenha precedência.