I’m using SSO (DiscourseConnect) with my Discourse, and it works fine, except for one thing: my SSO is e-mail based, so users just choose e-mail, password and that’s it.
So my SSO returns just the e-mail, not an username. If an user with that e-mail doesn’t exist in Discourse, it will create one automatically, and try to fill in an user name automatically.
I thought Discourse would find a nice unique username based on the e-mail, but what it does is create a bunch of “user_a”, “user_a1”, etc.:
Take a look at use email for username and name suggestions and use name for username suggestions in your site settings to adjust this behaviour for your needs.