Gestion des options de cookies
#5553
Merged
marcimat
merged 2 commits from issue_5552_cookies
into master
1 week ago
Loading…
Reference in New Issue
There is no content yet.
Delete Branch 'issue_5552_cookies'
Deleting a branch is permanent. It CANNOT be undone. Continue?
true
dès qu’on est en HTTPStrue
si la constante_COOKIE_SECURE
est définie(auparavent uniquement sur les cookies _COOKIE_SECURE_LIST + spip_session);
true
_COOKIE_SECURE_LIST
(utiliser l’option 'httponly' àtrue
sur les appels concernés)_COOKIE_SECURE
Refs: #5552
--
J’ai plusieurs questions tout de même :
_COOKIE_SECURE
peut être qu’il faut simplement de déprécier aussi, vu qu’on affectetrue
si https ?$options
(j’ai mis @deprecated l’ancien code): mais je me demande s’il ne faut pas revenir à la signature de PHP.Je m’explique :
Depuis PHP 8+ on peut nommer les paramètres d’appels de fonction, tel que
setcookie('nom', 'valeur', expires: 3600, secure: true);
PHP sur cette fonction accèpte, comme on a fait, un tableau en 3è option
setcookie('nom', 'valeur', ['expires' => 3600, 'secure' => true]);
Mais à partir d’un tableau, en PHP on peut aussi utiliser le
spread operator
(···
) pour exploser un tableau (même avec clés indexées) en paramètre de fonction, tel quesetcookie('nom', 'valeur', ...['expires' => 3600, 'secure' => true]);
Un des avantages des arguments nommés, c’est que les IDE et les outils d’analyse statique voient rapidement les typages et les éventuels prooblèmes, contrairement à des tableaux où il faut alors spécifier dans le PHP doc un format assez spécifique.
Ça serait plus clair et cohérent que cette fonction
spip_setcookie
mappe la signature de PHP du coup, non ? (edit: fait)ebcd459290
to540c750c68
2 months agoJe pense oui, car je me demande quel est l'intérêt de passer les cookies en secure/httponly si le site n'est pas en https ?
Merci pour les explications et +1 pour la cohérence avec la fonction de PHP !
Si tu mets 'secure' à true hors HTTPS (et localhost je crois), les cookies ne sont simplement pas envoyés.
Le seul cas que je vois c’est si le site est mal configuré et ne redirige pas de http vers https côté serveur, dans ce cas on voudrait qu’aucun cookie ne circule sur le http je suppose ?
Je pense qu'on peut se permettre de ne pas prendre en charge ce type d'erreur de configuration tant que c'est bien déclaré/documenté.
Je suis favorable, de manière générale, à la dépréciation des constantes et pour le nommage de paramètres quand il y en a beaucoup.
9561264c58
tofd0af2bf41
2 weeks agofd0af2bf41
toa662312c2f
2 weeks ago_COOKIE_SECURE
aussi[WIP] change: Gestion des options de cookiesto Gestion des options de cookies 2 weeks ago2a0f64e4d7
into master 1 week agoReviewers
2a0f64e4d7
.