Nous avons quelques règles pour un sous-arbre de Location
s, qui impliquent Require
- ing ldap-group
et expr
s.
L'utilisateur est dûment mis au défi de fournir des identifiants de connexion, qui sont vérifiés.
Toutefois, même lorsque les informations d'identification sont correctes et que l'accès est refusé pour d'autres raisons (telles que l'appartenance à un groupe incorrect ou une adresse IP incorrecte), la réponse du serveur est toujours 401 - au lieu de 403.
En conséquence, les navigateurs incitent les utilisateurs à "réessayer" ... Puis-je dire à Apache (2.4) d’utiliser 403, si les informations fournies dans l’en-tête Authorization
- extraient, et c’est une autre règle, qui rejette la demande?
(Publier une copie de ma réponse sur défaut du serveur , à la demande de l'OP.)
Je pense que ce que vous voulez, c'est AuthzSendForbiddenOnFailure :
AuthzSendForbiddenOnFailure On
Contexte: répertoire, .htaccess
Si l'authentification réussit mais que l'autorisation échoue, Apache HTTPD répondra par défaut avec un code de réponse HTTP '401 UNAUTHORIZED'. Cela oblige généralement les navigateurs à afficher à nouveau le dialogue de mot de passe à l'utilisateur, ce qui n'est pas souhaitable dans toutes les situations. AuthzSendForbiddenOnFailure permet de changer le code de réponse en "403 INTERDIT".
Notez qu'il comporte un avertissement de sécurité:
Avertissement de sécurité
La modification de la réponse en cas d'absence d'autorisation affaiblit la sécurité du mot de passe, car elle révèle à un attaquant possible que son mot de passe deviné était correct.