Question Règle Apache mod_header pour changer tous les cookies pour sécuriser


Je voudrais changer tous les cookies pour qu'ils soient sécurisés et http uniquement. Cela fonctionne bien pour un cookie, mais ne fonctionne pas lorsque plusieurs cookies sont configurés en réponse.

La règle Apache mod_header devrait changer les cookies de:

Set-Cookie cookie1=value; Path=/somePath
Set-Cookie cookie2=value; Path=/somePath

à

Set-Cookie cookie1=value; Path=/somePath; Secure; Http-Only
Set-Cookie cookie2=value; Path=/somePath; Secure; Http-Only

J'utilise mod_headers pour cela avec la règle suivante:

Header edit Set-Cookie ^(.*)$ $1;Secure;HttpOnly

Cela fonctionne bien lorsqu'un seul cookie est défini, mais s'il en existe plusieurs, il supprime tout ce qui suit et ils ne sont pas définis du tout.

Toute aide comment écrire la règle mod_headers pour plusieurs valeurs? ou le problème est dans quelque chose d'autre?


5
2018-02-15 14:12


origine




Réponses:


J'ai trouvé la réponse. Le problème est dans la version d'apache installée sur le serveur. La commande Edit est prise en charge à partir de la version 2.2.4 mais la version est 2.2.3 (par défaut sous RHEL 5+). J'ai donc amélioré httpd et tout fonctionne bien.

Pour plus d'informations sur la mise à niveau de httpd sur RHEL ou CentOS, voir:

http://www.jasonlitka.com/2007/01/17/upgrading-to-httpd-224-on-rhel-centos-4/

http://www.jasonlitka.com/yum-repository/


2
2018-02-16 11:54





Cette règle fonctionnerait pour apache 2.2.3

Header set Set-Cookie HttpOnly;Secure

2
2018-01-27 23:03



Cela ne semble pas entraîner l'envoi de cookies avec ces drapeaux, mais plutôt une valeur ajoutée au cookie appelé "HttpOnly" ... Je me trompe peut-être, mais je ne pense pas que cela apporte quelque chose ... - Matt Browne
Peu importe, je pense que je me suis trompé. J'ai vérifié les en-têtes avec cet outil et il semble avoir le réglage HttpOnly comme il se doit. J'étais confus parce que les outils de développement Chrome et Firebug ne semblaient pas indiquer que le cookie était HttpOnly. - Matt Browne
Je conviens que quelque chose ne va pas ici. Un cookie supplémentaire appelé "HttpOnly" est ajouté - Au moins dans Apache 2.2.12. En outre, l'application est interrompue, car l'application ne s'attend pas à ce cookie. - Phaedrus