هذه المشاركة تتناول ميزة غير موجودة بالتأكيد، ولكنني أرغب في تنفيذها بنفسي. ومع ذلك، في هذه المرحلة، لا أعرف مقدار العمل الذي قد يتطلبه الأمر، والهدف من هذا السؤال هو محاولة تحديد المتطلبات اللازمة.
بعض السياق: نحن نعمل على حل للمصادقة الخالية من كلمات المرور. https://trykno.com/ يعمل الحل كخدمة، مما يعني أن أصحاب المواقع الذين يستخدمون الخدمة لا يحتاجون إلى التعامل مع إرسال رسائل البريد الإلكتروني بشكل آمن أو تخزين أي أسرار أو معلومات تعريف شخصية.
سيكون رائعًا بالنسبة لنا أن يكون لدينا منتدى للمشروع، ونود استخدام Discourse.
ومع ذلك، نحتاج إلى استبدال نظام المصادقة بحيث يستخدم Kno.
أسئلة؟
هل نظام المصادقة في Discourse قابل للإضافة؟
هل توجد أي افتراضات ثابتة في الكود تفيد بأن للمستخدم عنوان بريد إلكتروني؟
ما هو إطار العمل الأمامي؟ (أرى ember-rails في ملف gemfile، ولكن لا توجد إشارة إلى ember في package.json)
آسف إذا كانت هذه الأسئلة بسيطة، فأنا لست مطور Ruby، وأي تلميحات حول المشكلة ستكون ذات قيمة. شكرًا لك
حاليًا، من الممكن عدم استخدام كلمة مرور وإرسال رابط إليك فقط.
إذا كان هدفك هو تطوير kno، فمن المرجح أنك تريد تطويره كخادم OAuth. حينها يمكن للناس استخدامه كأحد مصادر المصادقة المتعددة حيث يكون SSO هو المصدر الوحيد. انظر Discourse OAuth2 Basic
أرى إمكانية إرسال رابط، لكن Kno يوفر المزيد مثل المصادقة عبر الجهاز باستخدام WebAuthn بمجرد تأكيد بريدك الإلكتروني لمرة واحدة.
التطوير كخادم OAuth لا يل unfortunately المتطلبات التي نحتاجها. (يجب عليّ على الأرجح كتابة شيء في الأسئلة الشائعة الخاصة بنا يوضح سبب ذلك، لكنه يعود إلى أن Kno يسمح لك بالمصادقة من جهاز واحد باستخدام جهاز آخر).
بعد النظر في الأمور بشكل أعمق، يبدو أنني أستطيع تجميع نسخة أولية قابلة للتطبيق من خلال تنفيذ حل SSO مخصص لمنصة Discourse.
هل من الممكن استخدام مزود OAuth واحد وتعطيل جميع أنواع المصادقة الأخرى؟
في هذه الحالة، سيكون من الجيد أيضًا أن يبدأ تدفق المصادقة تلقائيًا عند النقر على تسجيل الدخول، أي دون فتح نافذة تسجيل الدخول وطلب من المستخدم اختيار المزود.