Auparavant, dans Auth0, les options de l’attribut de cookie
samesite étaient true, false, strict ou lax. Si vous ne définissiez pas l’attribut manuellement, Auth0 utilisait la valeur par défaut false.
À compter de février 2020, Google Chrome v80 a modifié la façon dont il gère les cookies. C’est pourquoi Auth0 a apporté les changements suivants à sa gestion des cookies :- Les cookies pour lesquels l’attribut
samesiten’est pas défini seront définis surlax. - Les cookies avec
sameSite=nonedoivent être marqués comme sécurisés, sinon ils ne peuvent pas être enregistrés dans l’espace de stockage des cookies du navigateur.
- N’ont aucune limite quant à la quantité d’informations de session pouvant être stockées.
- Permettent d’effacer facilement la session d’un utilisateur : il suffit de supprimer l’enregistrement de la base de données.
- Nécessitent une base de données pour stocker les données de session (mais la plupart des applications Web en ont déjà une).
- Augmentent la latence, puisqu’il faut faire des appels à la base de données pour lire la session (et parfois l’écrire) à chaque requête HTTP effectuée par un utilisateur.
- Peuvent être difficiles à faire évoluer lorsque vous avez beaucoup d’utilisateurs et, par conséquent, de nombreuses opérations de lecture/écriture dans votre base de données.
- Peuvent être mis en œuvre facilement; ne nécessitent pas de backend particulier.
- Réduisent la latence, car il n’est pas nécessaire d’effectuer de requête à une base de données.
- Faciles à faire évoluer.
- Il faut limiter l’information de session stockée, car la taille des cookies est limitée (max. 4 KB dans la plupart des navigateurs). Même si l’information de session peut être répartie entre plusieurs cookies, nous ne le recommandons pas.
- Il est difficile de révoquer une session, puisqu’il n’existe aucun enregistrement dans une base de données à supprimer; vous devrez trouver d’autres moyens de forcer l’effacement d’une session.
- Si vous utilisez plusieurs serveurs Web, vous devez vous assurer qu’ils possèdent tous la clé permettant de chiffrer/déchiffrer ou de signer le cookie.