وجانغو-pyroven هو التطبيق جانغو الذي يوفر المصادقة الخلفية جانغو التي يمكن أن تضاف إلى AUTHENTICATION_BACKENDS في وحدة الإعدادات جانغو:
AUTHENTICATION_BACKENDS = (
على & nbsp؛ "pyroven.pyroven_django.RavenAuthBackend،
على & nbsp؛ "django.contrib.auth.backends.ModelBackend"
)
وهذا يسمح على حد سواء طبيعية تسجيل الدخول جانغو والغراب تسجيل الدخول.
أي شيء باستخدام pyroven يجب التأكد من أن التكوين هو تحميلها. يتم ذلك عن طريق تعيين متغير التكوين في فئة مفردة الغراب:
من pyroven RavenConfig استيراد
من pyroven.pyroven_django استيراد الغراب
تكوين صفر ():
على & nbsp؛ ص = الغراب ()
& nbsp؛ إذا r.config هو بلا:
على & nbsp؛ r.config = RavenConfig ("raven.ini")
صفحة الدخول يجب إعادة توجيه المستخدمين إلى الغراب:
raven_login مواطنه (طلب):
على & nbsp؛ # تأكد من أننا تكوينه بشكل صحيح
على & nbsp؛ تكوين ()
على & nbsp؛ # احصل على وجوه الغراب والعودة إعادة توجيه إلى خادم الغراب
على & nbsp؛ ص = الغراب ()
على & nbsp؛ عودة r.get_login_redirect ()
عندما مصادقة المستخدم مع الغراب، سيقوم الملقم الغراب توجيهها الى موقعك (يتم تحديد URL المحدد في ملف .ini أعلاه). الصفحة العودة يجب استدعاء جانغو مصادقة وظائف تسجيل الدخول مع رمز المتلقاة من الملقم الغراب عبر HTTP GET:
من django.contrib.auth مصادقة الاستيراد، تسجيل الدخول
raven_return مواطنه (طلب):
على & nbsp؛ # تأكد من أننا تكوينه بشكل صحيح
على & nbsp؛ تكوين ()
على & nbsp؛ # الحصول على المنوال الذي بعث خادم الغراب لنا - وهذا ينبغي حقا
على & nbsp؛ # ديها في محاولة / باستثناء حوله لالتقاط KeyError
على & nbsp؛ المنوال = request.GET ['WLS-الاستجابة']
على & nbsp؛ # انظر إذا كان هذا هو عربون صحيح
على & nbsp؛ المستخدم = مصادقة (response_str = رمز)
& nbsp؛ إذا المستخدم لا يوجد:
على & nbsp؛ # نوعا من يخطئ
على & nbsp؛ آخر:
على & nbsp؛ الدخول (طلب، المستخدم)
على & nbsp؛ # إعادة التوجيه معقولة في مكان ما
على & nbsp؛ العودة HttpResponseRedirect ('/')
ملف. ini الذي يتم تحميل الإعدادات الغراب من التنسيق التالي:
[الغراب]
LOGIN_URL = "http://raven.cam.ac.uk/auth/authenticate.html"
logout_url = "http://raven.cam.ac.uk/auth/logout.html"
return_url = "http://your.server.cam.ac.uk/ravenreturn/"
pubkeys = {'2': '/ مسار / إلى / pubkey2.crt'}
المتطلبات:
بيثون
جانغو
لم يتم العثور على التعليقات