Ce guide concerne NGINX Open Source. Vérifiez la version, les modules compilés ou chargés et les particularités de votre paquet.
Définir ce qui autorise la requête
Une règle allow/deny traite une adresse ; elle ne connaît pas l’utilisateur métier. Basic Auth vérifie un secret associé à un nom ; auth_request délègue une décision à un service d’authentification par sous-requête. Ces mécanismes n’établissent pas la même preuve et peuvent répondre à des exigences différentes.
Formulez d’abord la règle attendue : réseau administratif, utilisateur authentifié ou permission sur une ressource. Une restriction IP peut être appropriée pour un laboratoire local et insuffisante pour une application accessible via un proxy partagé. Définissez la provenance de l’adresse réellement évaluée.
Sources : NGINX / F5, Module ngx_http_access_module ; NGINX / F5, Module ngx_http_auth_basic_module ; NGINX / F5, Module ngx_http_auth_request_module.
Localiser la politique et ses dépendances
Les restrictions s’appliquent dans les contextes autorisés par leur module. L’ordre des règles IP compte. La combinaison de plusieurs contrôles peut aussi être influencée par satisfy : demande-t-on le succès de tous les contrôles ou d’au moins l’un d’eux ? Une lecture partielle peut inverser la politique recherchée.
Le fragment Basic Auth appartient à un server de laboratoire. Le fichier de mots de passe doit être créé et protégé séparément, hors du répertoire public. Utilisez HTTPS pour transporter les credentials ; l’encodage de Basic Auth n’est pas un chiffrement.
location /admin/ {
auth_basic "Administration du laboratoire";
auth_basic_user_file /etc/nginx/revision.htpasswd;
proxy_pass http://127.0.0.1:9000;
} Sources : NGINX / F5, Module ngx_http_auth_basic_module ; NGINX / F5, Module ngx_http_core_module ; NGINX / F5, Configuring HTTPS servers.
Interpréter la décision auth_request
Le module auth_request utilise le statut de la sous-requête pour autoriser ou refuser l’accès selon ses règles. Vérifiez sa présence dans votre build. Le service d’authentification, ses routes internes et les en-têtes échangés constituent une dépendance à sécuriser et à surveiller.
Une panne du service d’authentification ne doit pas être confondue avec un refus normal d’un utilisateur. Les journaux doivent permettre de distinguer accès non autorisé, backend d’authentification indisponible et erreur de configuration. N’ajoutez pas les secrets à ces traces pour faciliter le diagnostic.
Sources : NGINX / F5, Module ngx_http_auth_request_module ; NGINX / F5, Module ngx_http_log_module.
Exercice : vérifier les refus autant que les succès
Écrivez quatre cas : utilisateur sans credential, credential incorrect, utilisateur autorisé et dépendance d’authentification indisponible. Pour chacun, précisez le comportement souhaité et la trace qui l’établit. Ajoutez une URI voisine pour vérifier que la politique protège exactement le périmètre prévu.
Un test réussi sur la page d’administration ne prouve pas que toutes ses ressources sont protégées. Examinez les sous-routes, les méthodes et la sélection des locations. Conservez une politique d’accès explicite, puis confrontez la configuration aux cas de recette.
Sources : NGINX / F5, Module ngx_http_access_module ; NGINX / F5, Module ngx_http_auth_request_module ; NGINX / F5, Module ngx_http_core_module.
Sources et portée
Références consultées le . Les exemples utilisent des noms et adresses de documentation à remplacer. Les commandes de lecture affichent l’existant ; les captures et requêtes de diagnostic sont à limiter au périmètre autorisé.
- NGINX / F5 — Module ngx_http_access_module · Référence officielle ; vérifier le périmètre de version · consulté le 3 octobre 2026.
- NGINX / F5 — Module ngx_http_auth_basic_module · Référence officielle ; vérifier le périmètre de version · consulté le 3 octobre 2026.
- NGINX / F5 — Module ngx_http_auth_request_module · Référence officielle ; vérifier le périmètre de version · consulté le 3 octobre 2026.
- NGINX / F5 — Module ngx_http_core_module · Référence officielle ; vérifier le périmètre de version · consulté le 3 octobre 2026.
- NGINX / F5 — Configuring HTTPS servers · Référence officielle ; vérifier le périmètre de version · consulté le 3 octobre 2026.
- NGINX / F5 — Module ngx_http_log_module · Référence officielle ; vérifier le périmètre de version · consulté le 3 octobre 2026.
Retrouver le parcours de lecture F5 NGINX