التكامل مع نظام مصادقة مخصص حيث لا تكون البريد الإلكتروني فريدًا

نعم. ستحتاج إلى تمكين إعداد الموقع auth overrides email لهذا الغرض. عند تمكينه، تتم مزامنة البريد الإلكتروني لمستخدم Discourse مع البريد الإلكتروني المضمن في حمولة المصادقة (حمولة DiscourseConnect في حالتك) في كل مرة يقوم فيها المستخدم بتسجيل الدخول. إذا لم يكن ممكّنًا، فسيتم تعيين البريد الإلكتروني للمستخدم إلى البريد الإلكتروني في حمولة المصادقة عند إنشاء الحساب الأولي، ولكن لن يتم تحديثه في عمليات تسجيل الدخول اللاحقة.

بافتراض تمكين auth overrides email، يمكنك أيضًا تحديثه دون مطالبة المستخدمين بتسجيل الدخول عن طريق إجراء طلب API إلى المسار sync_sso: مزامنة بيانات مستخدم DiscourseConnect مع المسار sync_sso.

يمكنك أيضًا تحديث عناوين البريد الإلكتروني للمستخدمين بشكل جماعي من وحدة تحكم Rails الخاصة بالموقع، ولكن (أعتقد) أن القيام بذلك بهذه الطريقة سيؤدي إلى إرسال بريد إلكتروني تأكيدي من Discourse إلى المستخدم. هذا لن يعمل مع عناوين البريد الإلكتروني المزيفة.

ربما يمكنك فقط تعيين رسائل البريد الإلكتروني إلى شيء ذي معنى في البداية. بمجرد إعداد موقع Discourse، يجب عليك إجراء بعض الاختبارات لمعرفة نطاقات البريد الإلكتروني التي سيقبلها Discourse للرسائل الإلكترونية المزيفة. بالاعتماد على الذاكرة، أعتقد أن @invalid.com مقبول. لست متأكدًا من النطاقات الأخرى. من جانبك، يمكنك تعيين شيء مثل <userId>@invalid.com إلى عنوان البريد الإلكتروني الفعلي للمستخدم.