أسئلة أسماء مستخدمي Discourse/Drupal SSO

مرحبًا بالجميع،

يبدو أن نسخة Discourse الخاصة بنا الآن تنقل أسماء جميع المستخدمين بصيغة تشبه “user####”، بينما كانت سابقًا تنقلها بصيغة مشتقة من عناوين بريدهم الإلكتروني (مثل: إذا كان اسم المستخدم “tonysmith1@aol.com”، فإن النظام كان يجعل اسم المستخدم “tonysmith1”). هل هناك طريقة لتغيير هذا؟

أيضًا، هل توجد طريقة لنقل معلومات الملف الشخصي من مستخدم في Drupal لتعبئة ملف المستخدم في Discourse؟ مثل: اللقب، اسم الشركة، إلخ.

هذا هو نتيجة تغيير حديث. في السابق، إذا لم يتم تزويد اسم مستخدم في حمولة 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 بهذه الطريقة.

إعجاب واحد (1)