يشرح هذا الدليل كيفية إعداد حسابات المستخدمين تلقائيًا في Discourse عند تمكين مصادقة خارجية، بحيث يتم إنشاء المستخدمين تلقائيًا دون عرض صفحة التسجيل.
مستوى المستخدم المطلوب: مدير
إعداد حسابات المستخدمين تلقائيًا باستخدام المصادقة الخارجية
عند ربط Discourse بموفر هوية خارجي عبر DiscourseConnect، أو إضافة OpenID Connect، أو إضافة OAuth2 Basic، أو SAML، أو أي موفر مصادقة آخر، يقوم Discourse بإنشاء حسابات المستخدمين عند أول تسجيل دخول. بشكل افتراضي، يعرض صفحة التسجيل قبل إنشاء الحساب، حتى عندما يكون الموفر قد قدم بالفعل جميع التفاصيل المطلوبة (البريد الإلكتروني، اسم المستخدم، والاسم).
يلغي الإعداد التلقائي هذه الخطوة الإضافية. عند تمكين الإعدادات الصحيحة، يقوم Discourse بإنشاء الحساب في الخلفية بصمت ويسجل دخول المستخدم مباشرة، مما يوفر تجربة سلسة.
تمكين الإعداد التلقائي
لتخطي خطوة التسجيل، تحتاج إلى تمكين إعداد الموقع auth_skip_create_confirm. يقع هذا الإعداد في إدارة > جميع إعدادات الموقع > صفحة تسجيل الدخول.
اختياري: تمكين إعدادات التجاوز
تخبر هذه الإعدادات Discourse بالثقة في القيم المقدمة من موفر الهوية الخاص بك واستخدامها مباشرة، دون مطالبة المستخدم بمراجعتها. انتقل إلى إدارة > جميع إعدادات الموقع > صفحة تسجيل الدخول وقم بالتحقق من ما يلي:
| الإعداد | الوصف |
|---|---|
auth_overrides_username |
يستخدم اسم المستخدم من الموفر مباشرة في كل تسجيل دخول، ويمنع المستخدم من تغييره محليًا. ينطبق على جميع موفري المصادقة. |
auth_overrides_email |
يستخدم البريد الإلكتروني من الموفر مباشرة في كل تسجيل دخول، ويمنع المستخدم من تغييره محليًا. ينطبق على جميع موفري المصادقة. |
auth_overrides_name |
يستخدم الاسم الكامل من الموفر مباشرة في كل تسجيل دخول، ويمنع المستخدم من تغييره محليًا. ينطبق على جميع موفري المصادقة. |
auth_overrides_avatar |
يستخدم الصورة الرمزية من الموفر مباشرة في كل تسجيل دخول، ويمنع المستخدم من تغييرها محليًا. ينطبق على جميع موفري المصادقة. |
تحتوي إضافات OAuth2 Basic و OpenID Connect و SAML أيضًا على إعدادات تجاوز خاصة بها (
oauth2_overrides_email،openid_connect_overrides_email،saml_sync_email). تعمل هذه الإعدادات بنفس طريقة إعدادauth_overrides_emailالعالمي، لكنها تنطبق فقط على موفرها الخاص. لمعظم الإعدادات، تكون الإعدادات العالمية المذكورة أعلاه كافية.
الأسئلة الشائعة
هل تنطبق هذه الإعدادات على جميع إضافات المصادقة، أم فقط على DiscourseConnect؟
تنطبق إعدادات auth_skip_create_confirm و auth_overrides * على جميع موفري المصادقة الخارجية، بما في ذلك DiscourseConnect و OpenID Connect و OAuth2 Basic و SAML، وأي إضافة أخرى مبنية على إطار عمل مصادقة Discourse.
هل يمكنني إنشاء حسابات للمستخدمين مسبقًا قبل تسجيل دخولهم؟
نعم، ولكن فقط عند استخدام DiscourseConnect. استخدم مسار API sync_sso كما هو موضح في Sync DiscourseConnect user data with the sync_sso route.
ما هو الفرق بين DiscourseConnect وإضافات OAuth2/OIDC؟
DiscourseConnect هو بروتوكول SSO المخصص الخاص بـ Discourse. يمنح موقعك الخارجي تحكمًا كاملًا في حسابات Discourse، بما في ذلك القدرة على دفع عضوية المجموعات، وتجاوز الحقول، وإنشاء الحسابات مسبقًا عبر API. تستخدم إضافات OAuth2 و OpenID Connect بروتوكولات قياسية في الصناعة، مما يجعلها أسهل للربط مع موفري الهوية الطرفية مع الحد الأدنى من التكوينات.