Ủy quyền proxy chuyển tiếp Apache: Require và AuthMerging
Theo dõi ủy quyền proxy toàn cục và trên máy chủ ảo qua các quy tắc hợp nhất phần của Apache, thay vì coi proxy.conf là một tầng chính sách riêng.
Một quy tắc trong proxy.conf không phải là một lớp quy tắc đặc biệt. Apache đọc cấu hình được đưa vào cây cấu hình của mình; phần bao quanh toàn cục, VirtualHost hoặc phần khớp quyết định cách chỉ thị tham gia.
Bắt đầu với trình lắng nghe và máy chủ ảo phục vụ yêu cầu proxy chuyển tiếp. Sau đó thu thập các phần Proxy khớp từ ngữ cảnh đó và cấu hình chính. Thứ tự xử lý các phần mới là điều quan trọng, không chỉ tệp nào được sửa cuối cùng.
Ủy quyền không phải lúc nào cũng cộng dồn
Với hành vi mặc định AuthMerging Off, ủy quyền được kế thừa cho đến khi một phần áp dụng sau đó cung cấp logic ủy quyền của riêng nó. Logic mới đó có thể thay thế các yêu cầu trước đó thay vì thêm một hạn chế khác.
| Cài đặt | Kết hợp với phần ủy quyền trước gần nhất |
|---|---|
| Off | Ủy quyền mới có thể ghi đè logic được kế thừa |
| And | Cả hai tập hợp đều phải ủy quyền |
| Or | Bất kỳ tập hợp nào cũng có thể ủy quyền |
Bản thân AuthMerging chỉ có hiệu lực cục bộ với phần chứa nó. Đừng cho rằng đặt And một lần sẽ thay đổi mọi phần sau đó.
Giữ chính sách dự định rõ ràng khi có thể. Hai dòng Require không có vùng chứa ủy quyền bao quanh là các lựa chọn thay thế ngầm, vì vậy quy tắc IP cộng valid-user không tự động là «IP và người dùng». Dùng RequireAll khi cả hai điều kiện thuộc cùng một quyết định.
Xem lại toàn bộ cấu hình khớp trước khi thay đổi tài khoản proxy hoặc mở quyền truy cập. Sau đó kiểm tra các trường hợp được phép và bị từ chối trên trình lắng nghe đang chạy. Một yêu cầu có thể bị từ chối—hoặc bất ngờ được cho phép—vì một phần khác đã cung cấp ủy quyền hiệu lực.