L'attribut SameSite indique au navigateur si le cookie peut être utilisé dans un contexte intersite ou uniquement dans un contexte de même site. De même, si une application a l'intention d'être accessible dans un contexte intersite, elle ne peut le faire que via la connexion HTTPS. Pour plus de détails, consultez la RFC6265.
Jusqu'en février 2020, l'attribut SameSite n'était pas défini de manière explicite dans NetScaler. Le navigateur a pris la valeur par défaut (Aucun). Le fait de ne pas définir l'attribut SameSite n'a eu aucune incidence sur NetScaler Gateway ni sur les déploiements d'authentification, d'autorisation et d'audit.
La mise à niveau de certains navigateurs, tels que Google Chrome 80, modifie le comportement par défaut des cookies entre domaines. L'attribut SameSite peut être défini sur l'une des valeurs suivantes. La valeur par défaut de Google Chrome est définie sur Lax. Pour certaines versions d'autres navigateurs, la valeur par défaut de l'attribut SameSite peut toujours être définie sur Aucun.
-
Aucun : indique au navigateur d'utiliser un cookie dans un contexte intersite uniquement sur des connexions sécurisées.
-
Lax : indique que le navigateur doit utiliser un cookie pour les requêtes sur le même domaine et pour les intersites. Pour les sites intersites, seules les méthodes HTTP sécurisées telles que la requête GET peuvent utiliser le cookie. Par exemple, une requête GET d'un sous-domaine abc.example.com peut lire le cookie d'un autre sous-domaine xyz.exemple.com à l'aide d'un GET. Pour les sites intersites, seules les méthodes HTTP sécurisées sont utilisées, car les méthodes HTTP sécurisées ne modifient pas l'état du serveur. Pour plus de détails, consultez <https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite#lax>
-
Strict : utilisez le cookie uniquement dans le même contexte de site.
S'il n'y a pas d'attribut SameSite dans le cookie, Google Chrome assume la fonctionnalité de SameSite = Lax. Par conséquent, pour les déploiements au sein d'un iframe avec un contexte intersite qui nécessitent l'insertion de cookies par le navigateur, Google Chrome ne partage pas les cookies intersites. Par conséquent, il se peut que l'iframe du site Web ne se charge pas.