SSO with Wordpress but users cannot change their username

I have the SSO for Wordpress installed configured and working,… users are able to signup/login as expected.

However users cannot change their username.

I’ve set the username change period to 90 days but that still doesn’t allow users to change their name (within 90 days of creating the account, users still cannot change their username)

Here’s the user’s screenshot showing the lack of an edit pencil next to their username.

Fairly certain this is because you are using SSO and since you tied it to your wordpress database, that is where the change would have to take place.

What @cpradio said and also I’m guessing you might have the sso overrides username setting enabled.

Yep, if you turn that off people should be able to change their username again.

Thanks all! I unchecked the sso overrides username and viola it worked!

Thanks for your help!

Would this break the sso with workdpress if people are chaging their
username on Discourse? WP does not allow the changing of usernames.

There are some WP plugins that let you change usernames. I use this one:

If you have sso overrides username enabled then the next time the users logs in their username will update in Discourse. If you have it disabled, then I think if you just change their username in Discourse to match all should be fine.

Great. Thanks.

When changing the username do i change in discourse as well or will SSO update it for me? I am assuming i need to update Discourse as well through admin so it does not create a new account correct?

Is there a way to allow a user to change usernames in Discourse and sync it back to WP?

Not right now, no. The whole design of SSO is around the remote being the source of truth about identity.

Changing the username will not break SSO.

SSO is never tied to the username, but to the external id and E-Mail address. If the external ID is not known to Discourse, it associates it with the account having the same E-Mail address (or creates a new one). Afterwards, any changes to the account won’t affect this invisible link, Discourse will always recognize the account by its ID.

Thanks. That makes sense.

저도 정확히 같은 질문을 하고 있습니다!

@riking 님은 2015년 이 게시글 작성 시점에는 사용자 이름을 WordPress로 다시 동기화하는 방법이 없다고 언급하셨습니다.

저는 WP를 신뢰할 수 있는 데이터 소스(source of truth)로 유지하는 것을 선호합니다. 하지만 Discourse에서 사용자가 사용자 이름을 변경할 수 있도록 하고, SSO 제공자로서 이를 WP로 다시 동기화하는 기능을 원합니다. (때때로 사용자 이름의 기본값인 이메일 접두사가 사람들이 원하는 사용자 이름이 아닐 때가 있거든요).

아직도 작동 방식이 그렇지 않습니다. 이 플러그인은 워드프레스에서 디스커스로의 일방향 동기화만 지원합니다. SSO가 설정되어 있다면, 워드프레스에서 사용자 이름을 변경하고 해당 변경 사항이 디스커스로 동기화되는 것이 가장 좋은 방법입니다. 제 커뮤니티에서는 일부 경우 구 사용자 이름에 대한 언급을 일괄 업데이트해야 할 필요가 있기 때문에, 사용자 이름 변경은 관리자 작업에 해당합니다. 사용자는 관리자에게 사용자 이름 변경을 요청할 수 있습니다.

@tobiaseigen 이렇게 자세히 답변해 주셔서 정말 감사합니다.

여러분도 같은 상황에 놓여 계시고, 정확히 어떻게 대응하고 계신지 알 수 있어서 큰 도움이 됩니다. 우리도 결국 이렇게 해야 하는 게 아닌가 하고 생각하고 있었는데, 다른 숙련된 디스코러스(Discourse) 사용자분들도 이 문제를 이렇게 관리하고 있다는 걸 확인하니 자신감이 생깁니다.