كيفية منع تسجيل دخول آخر باستخدام Auth0 و OAuth2 Basic Plugin

تمكنت بنجاح من ربط Auth0 بمنصة Discourse الخاصة بي.

ومع ذلك، لا يعمل كما هو مخطط له.

حاليًا:

1 - يسجل المستخدم الدخول إلى تطبيقنا على example.com باستخدام Auth0
2 - ينتقل المستخدم إلى forum.example.com
3 - يتعين على المستخدم النقر على “تسجيل الدخول” مرة أخرى
4 - يتم تسجيل الدخول تلقائيًا دون الحاجة إلى إدخال التفاصيل مرة أخرى

أبحث عن طريقة لتخطي الخطوة 3.

بمعنى آخر، عندما يسجل المستخدم الدخول إلى تطبيقنا على example.com ثم ينتقل إلى forum.example.com، أريد أن يرى المحتوى تلقائيًا دون الحاجة إلى النقر على “تسجيل الدخول” مرة أخرى.

الطريقة الوحيدة لجعل ذلك يعمل هي تغيير login_required إلى true في إعدادات الموقع، لكن هذا سيجعل منتداك يفقد الوصول المجهول، ومحرك بحث جوجل للتصفح، وما إلى ذلك.

إعجابَين (2)

لقد قمت بذلك، ومع ذلك لا يزال المستخدم بحاجة إلى النقر على “تسجيل الدخول” — وهو ما يسجّل دخوله تلقائيًا.

أوه، عند استخدام OAuth2 بدلاً من DiscourseConnect، ستحتاج أيضًا إلى التحقق من الإعداد auth immediately.

إعجابَين (2)

لقد قمت بتفعيل ذلك أيضًا :unamused:

هل يمكن أن تكون المشكلة مرتبطة بحقيقة أن المستخدمين يقومون بالمصادقة في example.com، ولكنها لا تتم المصادقة مع النطاق الفرعي forum.example.com؟

هل يمكن أن تتسبب المشاكل إذا قاموا بالمصادقة في ex.example.com ثم انتقلوا إلى forum.example.com؟

لا. هل قمت بتعطيل جميع طرق المصادقة الأخرى؟ إذا كانت auth immediately معطلة، فهذا خطأ يجب إصلاحه.

إعجابَين (2)

نعم، تم تعطيل تسجيل الدخول المحلي. تم تفعيل oauth2 فقط.

هل يمكنك مشاركة عنوان URL للموقع؟

تم الإرسال عبر رسالة مباشرة

يعمل بالفعل من جهتي:

GET https://forum.com
استجابة 302 → https://forum.com/auth/oauth2_basic

GET https://forum.com/auth/oauth2_basic
استجابة 302 → https://auth0.com/login

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

ماذا تقصد بـ ‘آسف’؟

ما الذي يجب عليّ تعديله لجعل هذا يعمل؟