منح الوصول المجهول إلى عنوان URL / الإجراءات المحددة في Plone

StackOverflow https://stackoverflow.com/questions/1321828

  •  19-09-2019
  •  | 
  •  

سؤال

أنا أركض Plone 3.2.3 وقد قمت بتثبيت Humainemailman. بحيث يمكن للمستخدمين على موقع الويب الاشتراك وإلغاء الاشتراك في أنفسهم من مختلف المراسلين. humainemailman يعمل بسيطة جدا. يوجد عنوان URL / الإجراءات الخاصة الذي يمنحك قائمة نصية عادية بجميع عناوين البريد الإلكتروني المشترك في قائمة. علي سبيل المثال:

http://www.example.org/mailman_autolist_update؟list=mylist@example.org&password=fecret.

من المفترض أن تدع ببساطة عن عنوان URL وإطعام قائمة النصوص العادية في Sync_Members's Mailman. سهل.

المشكلة هي أن Plot لا يسمح لي بالوصول إلى عنوان URL هذا مجهول. عندما أقوم بتسجيل الدخول كمسؤول يمكنني الوصول إلى عنوان URL في متصفحي وشاهد قائمة عناوين البريد الإلكتروني. ولكن عندما لا أقوم بتسجيل الدخول (وعند استرداد عنوان URL باستخدام WGET)، ثم قام Plone بإعادة توجيهي إلى صفحة تسجيل الدخول.

كيف أقول إنهاء أنني أريد أن أسمح بالوصول المجهول إلى عنوان URL / الإجراء؟ يتم تعريف الإجراء نفسه (في التعليمات البرمجية) في المنتجات / humainemailman / skins / mailman_autolist_update.py.

شكرا مقدما!

هل كانت مفيدة؟

المحلول 3

Humainemailman يحتاج إلى أذونات الإدارة. هؤلاء هم أكثر من اللازم لإعطاء المجهول، لذا فإن إجابة Lennarts لم تحلها بالنسبة لي. بدلا من ذلك، قمت بتحرير Humainemailman و Redeclared الوظيفة المعنية يدعو الجمهور. هذا مخاطر أمنية طفيفة على الرغم من ذلك. إن Plone الخاص بي خلف وكيل Apache، لذا فإنني تعوض فقط السماح بالوصول إلى قائمة الأعضاء من LocalHost (حيث يعمل البرنامج النصي والبريد البريدي الخاص بالمزامنة والبريد نفسه أيضا).

نصائح أخرى

هناك عدة طرق لمعالجة هذا دون أباتشي أو إعادة تشغيل الأمان (مما يجعلني عصبية أيضا)

http://www.example.org:8080/mailman_autolist_update?list=mylist@example.org&password=secret&__ac_name=**USERNAME**&__ac_password=**PASSWORD**&pwd_empty=0&cookies_enabled=1&js_enabled=0&form.submitted=1"

كثيرا ما تستخدم هذه الخدعة في البرامج النصية باستخدام مستخدم خاص فقط "الخدمات". هناك أيضا خدعة HTTP Auth تبدو وكأنها http: // ** اسم المستخدم: password@**ww.example.org/mailman_autolist_update؟ List=mylist@example.org&password=Secret والتي قد تكون أو غير مدعومة حسب عميلك ليب.

بدلا من ذلك، إذا كان هذا الرمز يعمل في Python (البرنامج النصي)، فيمكنك إضافة ملف بيانات تعريف (myscript.py.البيانات الوصفية) وإعطاء هذا البرنامج النصي إذن وكيل من المدير

[default]
title = Do something useful in the c/py that requires elevated privs
proxy = Manager

اكتشف ما هو إذن بحماية تلك الصفحة، وإعطاء هذا الإذن للدور المجهول في جذر Plone.

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