سؤال

لدي خادم تخريب يعمل مع Apache. تقوم مصادقة المستخدمين باستخدام LDAP في تكوين Apache ويستخدم تراخيص SVN للحد من وصول المستخدم إلى مستودعات معينة. هذا يعمل تماما.

أباتشي

DAV svn
SVNParentPath /srv/svn
SVNListParentPath Off
SVNPathAuthz Off
AuthType Basic
AuthName "Subversion Repository"
AuthBasicProvider ldap
AuthLDAPBindDN        # private stuff
AuthLDAPBindPassword  # private stuff
AuthLDAPURL           # private stuff
Require valid-user
AuthzSVNAccessFile /etc/apache2/dav_svn.authz

تخريب

[groups]
soft = me, and, all, other, developpers

إضافة وصول مجهول من جهاز واحد

الآن ، لدي خدمة أريد إعدادها (Rietveld ، لمراجعات التعليمات البرمجية) التي تحتاج إلى وصول مجهول إلى المستودع. نظرًا لأن هذه خدمة ويب ، تتم الوصول دائمًا من نفس الخادم. وبالتالي أضفت تكوين Apache للسماح لجميع الوصول من هذا الجهاز. لم ينجح هذا حتى أضيف سطرًا إضافيًا في ملف التفويض للسماح للقراءة بالوصول إلى جميع المستخدمين.

أباتشي

<Limit GET PROPFIND OPTIONS REPORT>
  Order allow,deny
  Allow from # private IP address
  Satisfy Any
</Limit>

تخريب

[Software:/]
@soft = rw
* = r                    # <-- This is the added line

على سبيل المثال ، قبل إضافة التفويض من عنوان IP معين ، تمت مصادقة جميع المستخدمين ، وبالتالي كان لديهم اسم. الآن ، تتم بعض الوصول دون اسم المستخدم! لقد وجدت - اسم المستخدم في ملفات سجل Apache ، ولكن السطر - = r لا يعمل ، ولا تفعل anonymous = r. أود عدم السماح للقراءة بالوصول إلى كل شخص في ترخيص SVN. كيف يمكنني أن أفعل هذا؟

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

المحلول

حاول وضع هذا في ملف Authz الخاص بك:

[Software:/]
@soft = rw
$anonymous=r
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top