هذا هو نتيجة تغيير حديث. في السابق، إذا لم يتم تزويد اسم مستخدم في حمولة SSO، كان يتم إنشاء اسم مستخدم بناءً على عنوان البريد الإلكتروني للمستخدم. والمخاطرة في القيام بذلك هي أنه قد يعرّض عناوين البريد الإلكتروني للمستخدمين للخطر. وإذا لم يتم تزويد اسم مستخدم في حمولة SSO، فإن Discourse تقوم الآن بتعيين اسم المستخدم إلى “user” مع إضافة رقم لضمان تفرد أسماء المستخدمين.
الحل هو تزويد اسم مستخدم في حمولة SSO. وإذا كنت ترغب حقًا في إنشاء أسماء مستخدمين بناءً على عناوين البريد الإلكتروني للمستخدمين، فيجب عليك تقسيم عنوان البريد الإلكتروني عند رمز @ وإرسال الجزء الخاص بالاسم كاسم مستخدم.
أعتقد أنك تستخدم DiscourseConnect لـ SSO. وهذا يسمح لك بتعيين عدد كبير من المعاملات في حمولة SSO. راجع قوائم ACCESSORS و BOOLS في أعلى هذا الملف لمعرفة المعاملات التي يمكن تعيينها عبر حمولة DiscourseConnect: https://github.com/discourse/discourse/blob/main/lib/single_sign_on.rb. وستجد أنه يمكن تعيين كل من bio و title بهذه الطريقة.