Autorização do proxy direto no Apache: Require e AuthMerging
Acompanhe a autorização do proxy global e do host virtual pelas regras de fusão de seções do Apache, em vez de tratar o proxy.conf como uma camada de política separada.
Uma regra no proxy.conf não é uma classe especial de regra. O Apache lê a configuração incluída na sua árvore de configuração; a seção global, o VirtualHost ou a seção correspondente que a envolve determina como a diretiva participa.
Comece pelo listener e pelo host virtual que atendem à solicitação de proxy direto. Depois reúna as seções Proxy correspondentes desse contexto e da configuração principal. Importa a ordem de processamento das seções, não apenas qual arquivo foi editado por último.
A autorização nem sempre é cumulativa
Com o comportamento padrão AuthMerging Off, a autorização é herdada até que uma seção aplicável posterior forneça a sua própria lógica de autorização. Essa nova lógica pode substituir os requisitos anteriores em vez de acrescentar outra restrição.
| Ajuste | Combinação com a seção de autorização anterior mais próxima |
|---|---|
| Off | A nova autorização pode sobrepor a lógica herdada |
| And | Ambos os conjuntos precisam autorizar |
| Or | Qualquer um dos conjuntos pode autorizar |
O próprio AuthMerging é local à seção que o contém. Não presuma que definir And uma vez altera todas as seções seguintes.
Mantenha a política pretendida explícita sempre que possível. Duas linhas Require sem um contêiner de autorização que as envolva são alternativas implícitas, portanto uma regra de IP mais valid-user não é automaticamente «IP e usuário». Use RequireAll quando as duas condições pertencem à mesma decisão.
Revise a configuração correspondente completa antes de alterar uma conta de proxy ou abrir o acesso. Em seguida, teste os casos permitidos e negados no listener em execução. Uma solicitação pode ser recusada—ou permitida inesperadamente—porque outra seção forneceu a autorização efetiva.