مجوز پروکسی پیشرو در Apache: Require و AuthMerging
مجوز پروکسی سراسری و میزبان مجازی را از طریق قواعد ادغام بخشهای Apache دنبال کنید، نه اینکه proxy.conf را لایه سیاستی جداگانهای در نظر بگیرید.
قاعده در proxy.conf یک طبقه ویژه از قواعد نیست. Apache پیکربندی شاملشده را در درخت پیکربندی خود میخواند؛ بخش سراسری، VirtualHost یا بخش مطابق پیرامون آن تعیین میکند که دستور چگونه مشارکت کند.
از شنونده و میزبان مجازی که به درخواست پروکسی پیشرو خدمت میکنند شروع کنید. سپس بخشهای Proxy مطابق را از آن زمینه و پیکربندی اصلی گردآوری کنید. ترتیب پردازش بخشها مهم است، نه فقط اینکه کدام فایل آخر ویرایش شده است.
مجوز همیشه انباشتی نیست
با رفتار پیشفرض AuthMerging Off، مجوز به ارث میرسد تا زمانی که بخش قابلاعمال بعدی منطق مجوز خودش را ارائه دهد. آن منطق جدید میتواند الزامات پیشین را جایگزین کند، نه اینکه محدودیت دیگری بیفزاید.
| تنظیم | ترکیب با نزدیکترین بخش مجوز پیشین |
|---|---|
| Off | مجوز جدید میتواند منطق بهارثرسیده را بازنویسی کند |
| And | هر دو مجموعه باید مجوز دهند |
| Or | هر یک از مجموعهها میتواند مجوز دهد |
خود AuthMerging فقط به بخشی که آن را دربردارد تعلق دارد. گمان نکنید که یکبار تنظیم And همه بخشهای بعدی را تغییر میدهد.
سیاست موردنظر را تا حد امکان صریح نگه دارید. دو خط Require بدون محفظه مجوز پیرامون، بهطور ضمنی جایگزین یکدیگرند، بنابراین قاعده IP بههمراه valid-user بهطور خودکار «IP و کاربر» نیست. استفاده کنید از RequireAll وقتی هر دو شرط به یک تصمیم تعلق دارند.
پیش از تغییر حساب پروکسی یا باز کردن دسترسی، پیکربندی مطابق کامل را بررسی کنید. سپس موارد مجاز و ردشده را آزمایش کنید در برابر شنونده در حال اجرا. یک درخواست ممکن است رد شود—یا بهطور غیرمنتظره مجاز شود—زیرا بخش دیگری مجوز مؤثر را فراهم کرده است.