Autorisation du proxy direct dans Apache : Require et AuthMerging
Suivez l’autorisation du proxy globale et celle de l’hôte virtuel à travers les règles de fusion de sections d’Apache, au lieu de traiter proxy.conf comme une couche de stratégie séparée.
Une règle dans proxy.conf n’est pas une classe de règle particulière. Apache lit la configuration incluse dans son arbre de configuration ; la section globale, le VirtualHost ou la section correspondante qui l’englobe détermine la manière dont la directive participe.
Commencez par l’écouteur et l’hôte virtuel qui servent la requête de proxy direct. Rassemblez ensuite les sections Proxy correspondantes dans ce contexte et dans la configuration principale. L’ordre de traitement des sections compte, pas seulement le fichier modifié en dernier.
L’autorisation n’est pas toujours cumulative
Avec le comportement par défaut AuthMerging Off, l’autorisation est héritée jusqu’à ce qu’une section ultérieure applicable fournisse sa propre logique d’autorisation. Cette nouvelle logique peut remplacer les exigences précédentes plutôt que d’ajouter une restriction supplémentaire.
| Réglage | Combinaison avec la section d’autorisation précédente la plus proche |
|---|---|
| Off | La nouvelle autorisation peut supplanter la logique héritée |
| And | Les deux ensembles doivent autoriser |
| Or | L’un ou l’autre ensemble peut autoriser |
AuthMerging lui-même est local à la section qui le contient. Ne supposez pas qu’un réglage And effectué une fois modifie toutes les sections suivantes.
Gardez la stratégie voulue explicite autant que possible. Deux lignes Require sans conteneur d’autorisation englobant sont implicitement alternatives, si bien qu’une règle IP plus valid-user ne signifie pas automatiquement « IP et utilisateur ». Utilisez RequireAll lorsque les deux conditions relèvent de la même décision.
Examinez la configuration correspondante complète avant de modifier un compte proxy ou d’ouvrir l’accès. Testez ensuite les cas autorisés et refusés sur l’écouteur en fonctionnement. Une requête peut être refusée—ou autorisée de façon inattendue—parce qu’une autre section a fourni l’autorisation effective.