機能:Google OAuth2/SSO 使用時にメールのユーザー部分からデフォルトのユーザー名を作成

I hope it’s ok to post random feature requests/suggestions here.

I have a Discourse instance set up so that users can authenticate with a Google Apps Hosted Domain (in my case @vt.edu). I have observed that Discourse assigns user names based on combining first + last name it obtains via OAuth2 - e.g., First_Last.

What I’d much prefer is if the proposed username matched the user portion of the email account user@vt.edu since user is an identifier used elsewhere whereas First_Last is not. Moreover, First_Last is not guaranteed to be unique (John_Smith) whereas the user id is. This would for my use case help with the data explorer plugin when I need to match statistics against other records and just provide an overall more uniform experience.

「いいね!」 1

@andrei がプライバシーへの影響から、メールアドレスに基づいてユーザー名を「自動」作成することを完全に削除したと考えていますか?

「いいね!」 1

いいえ、正確には違います。これは削除されるのではなく、use_email_for_username_and_name_suggestions サイト設定を使用してオンにできる機能として無効化されます。

また、この変更は DiscourseConnect に対して行われるものであり、Google経由の認証を含む他の認証方法には適用されないことに注意してください。ただし、他の方法に対する修正も近日中に提供される予定です。

さらに、ユーザー名を生成する際、フルネームがメールアドレスよりも優先されます。認証子は、ペイロード内の username および full-name フィールドが空の場合にのみ、ユーザー名の提案にメールアドレスを使用しようとします。これはプラグインでカスタマイズできる部分です。しかし、特に Google 経由の認証の場合、デフォルトでメールアドレスをユーザー名の提案の主なソースとして使用することは望ましくありません。その理由は、この場合、ユーザー名に @gmail.com を追加するだけで、フォーラム上のすべてのユーザーのメールアドレスを特定できてしまう可能性があるためです。

「いいね!」 1