سؤال

كتبت تطبيقًا مؤخرًا ، والذي يعتمد على OpenID للمصادقة. تنتقل الكثير من تطبيقات الويب هذه الأيام إلى OpenID ، بقدر ما هي سابقا لديك نظام مصادقة UserD/كلمة المرور ، و OpenID هو مجرد وظيفة إضافية. نظرًا لأن طلبي جديد ، فقد قررت أنه لا معنى لبرمجة آلية المصادقة المنفصلة بناءً على معرف المستخدم/كلمة المرور ، عندما أتمكن من الاعتماد على OpenID لجميع المصادقة تمامًا.

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

كان لدي استجابة من نوعها قبل ذلك ، والتي كانت: "يمكنك دائمًا تشغيل خادم OpenID الخاص بك". أعتقد أنني لم أضع الكثير من التفكير في هذه الإجابة ، نظرًا لأن العديد من تطبيقات OpenID Server خام للغاية وتحتاج إلى الكثير من العمل قبل أن يتم تشغيلها في الإنتاج.

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

  • القدرة على تحميل حسابات المستخدمين
  • إعادة تعيين كلمة المرور التي تخدم ذاتيا من خلال البريد الإلكتروني للتحقق
  • الميزات الإدارية (القفل/إلغاء القفل/تعطيل الحسابات ، استكشاف الأخطاء وإصلاحها ، إلخ)
  • نظرة قابلة للتقدم
هل كانت مفيدة؟

المحلول

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

لم تكتب عن النظام الأساسي الخاص بك ، ولكن إذا كنت ترغب في استخدام PHP ، فعليك إلقاء نظرة على "Zend Framework" أو "PHP OpenID"

نصائح أخرى

هذا لا يجيب مباشرة على سؤالهم ، ولكن كم عدد الأشخاص الموجودين على الإنترنت وليس لديهم حساب مع Yahoo أو Flickr أو AIM أو WordPress أو MySpace أو Google أو MSN؟ انهم جميعا مزودي OpenId.

أود أن أزعم أنه بالنسبة للنسبة المئوية الصغيرة من "صافي السكان الذين لا يستخدمون أيًا من هذه الخدمات ، فقط قم بإشارةهم إلى Vidoop أو MyOpenId والسماح لهم بالحصول على حساب مع شخص لديه بالفعل بنية تحتية آمنة.

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

شيء آخر هو: MyOpenId يعطي عنوان URL أنيقًا لطيفًا لك ، عندما لا يكون Yahoo (على سبيل المثال). حتى لو كنت تعرف أن الشخص لديه حساب Yahoo ، لا يمكنك فقط استخدام اسم المستخدم. yahoo.com. Google نفس الشيء - يجب عليك أولاً استخدام حساب Google الخاص بك لتنشيط حساب Blogspot ، و ومن بعد لديك OpenId ، والذي قد لا يرتبط أو كثير بمعرف Gogle الخاص بك. لذا ، إذا كان لديك قائمة من المستخدمين وحتى إذا أنت تعرف أنهم جميعًا على Google أو Yahoo - حتى ذلك الحين لا يمكنك وضع افتراضات حول عنوان URL الخاص بهم

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top