تعطيل مطلب البريد الإلكتروني للتفعيل للمستخدمين المدعوين (SSO)

أعتقد أن هذا هو بالفعل كيف يعمل إذا لم يكن لديك SSO - المستخدم الذي تتم دعوته عبر البريد الإلكتروني لا يحتاج إلى تنشيط بريده الإلكتروني، حيث يعتبر رابط البريد الإلكتروني نفسه بمثابة التنشيط.

ومع ذلك، أنا أستخدم ووردبريس كـ SSO وإذا دعوت شخصًا ما، فهناك عملية شاقة تتمثل في إرساله أولاً إلى شاشة تسجيل الدخول، ثم الاضطرار إلى النقر فوق تسجيل، وملء النموذج، ثم الحاجة إلى التحقق من صحة بريدي الإلكتروني، ثم عند الوصول أخيرًا إلى المنتدى، يتعين عليك النقر فوق “تسجيل الدخول”، كل ذلك قبل الدخول.

هل هناك طريقة يمكنني بها:

  • جعل رابط الدعوة افتراضيًا للانتقال إلى صفحة التسجيل الخاصة بي، وليس صفحة تسجيل الدخول
  • تخطي الحاجة إلى تنشيط البريد الإلكتروني

سيساعد هذا كثيرًا! شكرًا.

مرحباً شون، آسف ولكنني مرتبك قليلاً.

من أين ترسل هذه الدعوة؟ هل يمكنك أن تشرح لي الخطوات التي تحدث حاليًا، على سبيل المثال:

  1. أذهب إلى ووردبريس
  2. أقوم بملء نموذج مستخدم جديد لدعوة مستخدم…

والخطوات التي ترغب في حدوثها، على سبيل المثال:

  1. أذهب إلى ووردبريس
  2. أنا…

مرحباً، لا، آسف على الالتباس، أعني استخدام نظام دعوة Discourse.

أريد تشجيع الأشخاص على دعوة أصدقائهم والحصول على الشارات المتعلقة بذلك. ولكن حاليًا، عملية التسجيل مرهقة جدًا بعد تلقي الدعوة.

أيضًا للعلم، لقد قمت بتعيينها لجعل الأشخاص المدعوين TL1 ولكنها تجاهلت ذلك في اختباري وعينتها إلى TL0.

حسناً، فهمت. في هذه الحالة

على حد فهمي، لا يمكن حالياً لعميل موفر DiscourseConnect التمييز بين طلب تسجيل الدخول الصادر من دعوة وطلب تسجيل الدخول الصادر من تسجيل دخول عادي. بمعنى آخر، هذه هي طريقة عمله

  1. ينشئ المستخدم أ دعوة في Discourse.
  2. ينتقل المستخدم ب إلى رابط الدعوة (في Discourse).
  3. لأن DiscourseConnect مُعد، يقوم Discourse بإعادة توجيه المستخدم ب إلى Wordpress.

حاليًا، لا أعتقد أنه من الممكن لمكون WP Discourse التمييز بين طلب وارد مثل 3 (أي إعادة توجيه من دعوة) وطلب وارد عندما ينقر المستخدم ببساطة على “تسجيل الدخول” في Discourse. بمعنى آخر، سيتعين عليك إعادة توجيه جميع طلبات المصادقة الواردة إلى التسجيل، وهو ما لا تريده على الأرجح.

@david فقط للتحقق، هل هذا صحيح :point_up_2:؟

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

نعم، هذا يبدو صحيحًا بالنسبة لي :+1:

إعجابَين (2)

@Shauny باختصار، ستحتاج إلى تحديث في بروتوكول DiscourseConnect نفسه (أي كيف يعمل في Discourse) لكي تنجح عملية الدعوة بالطريقة التي تريدها.

حسناً. وماذا عن البريد الإلكتروني الخاص بالتحقق؟ إنه يعرف أن عنوان البريد الإلكتروني تمت دعوته، فهل يمكنه تخطي هذه الخطوة الإضافية؟

إزالة البريد الإلكتروني للتحقق، إلى جانب كونه غير آمن، له نفس المشكلة.

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

لذلك، قد يكون إعادة التوجيه التلقائي إلى التسجيل ممكنًا إذا كان هناك تحديث لبروتوكول DiscourseConnect، ولكن إزالة التحقق من البريد الإلكتروني غير ممكنة على الأرجح (دون المساس بأمان موقعك).

ولكن إذا أرسلت رابط الدعوة عبر البريد الإلكتروني ونقروا على الرابط من البريد الإلكتروني، فقد قمت بالفعل بالتحقق من عنوان بريدهم الإلكتروني. إذا لم تستخدم تسجيل الدخول الموحد (SSO)، فإن كل هذا يعمل ولا يلزم إجراء مزيد من التحقق من البريد الإلكتروني!

وفقًا لفهمي، في حالته الحالية، لا توجد طريقة لـ Discourse لإخبار موفر SSO بأن البريد الإلكتروني تم التحقق منه بواسطة دعوة، ولا يخبر SSO بذلك أيضًا.

إعجابَين (2)

يجب أن تكون هناك طريقة لإزالة تنشيط البريد الإلكتروني في المنتج الأساسي. لدي Discourse مُعدّ باستخدام SSO، وخطوة التحقق من البريد الإلكتروني تضيف الكثير من الاحتكاك للمستخدمين الجدد.

يوجد هذا المكون الإضافي الذي يقوم بإيقاف تشغيله ولكنه للأسف ليس لدي إمكانية الوصول لتثبيت المكونات الإضافية حيث أقوم بالاستضافة (ولا يبدو أنه يعمل للجميع): Disable Email Verification for Discourse Plugin

من المحبط جدًا عدم القدرة على إيقاف تنشيط البريد الإلكتروني، وهناك العديد من المنشورات على مر السنين مع أشخاص مختلفين يكافحون مع هذا. يجب أن يسمح المنتج الأساسي للمسؤولين بتشغيل خادم بالطريقة التي يريدونها.

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