- OIDC Enterprise avec
form_post
- Liaison HTTP-POST
- Message Web (appelé également
checkSession
)
Attributs SameSite
You can add SameSite cookie attributes in theset-cookie
HTTP response header to restricts browser behavior. It may prevent the browser from sending the cookie’s key=value
pair based on the type of interaction that triggered the HTTP request.
Les valeurs d’attribut acceptées sont les suivantes :
Attribut | Description |
---|---|
strict | Envoyer le témoin si l’utilisateur navigue dans les limites d’origine du site |
lax | Envoyer le témoin si l’utilisateur navigue entre les domaines, mais pas pour des contextes tiers (iframes ou posts) |
none | Envoyer le témoin avec les demandes qui traversent les limites d’origine du site Web. À moins que d’autres conditions soient présentes (c.-à-d., les témoins tiers sont bloqués), n’envoyez pas le témoin. |
Attribut | Description |
---|---|
httpOnly | Permet à un témoin d’être envoyé uniquement avec des requêtes HTTP ; non lisible en utilisant le document.cookie de Javascript |
secure | Permet au navigateur d’envoyer le témoin uniquement à un contexte sécurisé ; que le contexte soit considéré comme sécurisé ou non dépend du navigateur, mais cela nécessite généralement l’utilisation de HTTPS |
max-age / expires | Contrôle si le témoin est un témoin de session (i.e., jeté lorsque votre navigateur clos la session) ou persistant (i.e., le témoin persiste au-delà de la session du navigateur) |
Modifications des témoins des navigateurs
Depuis février 2020, Google Chrome v80 gère les témoins d’une manière différente. Auth0 a mis en œuvre les changements suivants dans la manière dont les témoins sont traités :- La valeur des témoins dont l’attribut
SameSite
n’a pas été défini seralax
. - Cookies with
SameSite=none
must be secured; otherwise they cannot be saved in the browser’s cookie jar
auth0
(traite les sessions utilisateur)auth0-mf
(traite les informations concernant l’authentification multifacteur)did
(identifiant d’un appareil/agent utilisateur)
- Définira l’attribut
SameSite
surnone
, le témoin exigeant l’utilisation de HTTPS (quel que soit l’environnement). - Définira des témoins de secours au cas où un navigateur ancien ne prendrait pas en charge le réglage de
SameSite
surNone
. Ces témoins de secours sontauth0_compat
,auth0-mf_compat
etdid_compat
.
set-cookie
est la véritable key=value
du témoin. La partie rouge correspond aux attributs du témoin que le navigateur stocke dans la boîte à témoins pour décider ultérieurement s’il doit inclure la paire key+value
dans les requêtes.


Caractéristiques affectées
Le tableau ci-dessous montre comment les modifications de l’attributSameSite
peut affecter vos applications.
Comportement de l’application | Affecté par le changement |
---|---|
Fichiers témoins définis comme sameSite=none lorsque le site Web n’est pas https:// | Oui |
Les fichiers témoins n’ont pas de valeur d’attribut sameSite explicite définie et sont requis dans un contexte d’origine croisée (tel que HTTP form_post, intégration d’un iframe) | Oui |
Applications natives (tout ce qui n’est pas basé sur des fichiers témoins + basé sur le Web) | Non (M2M) |
Sous-domaine différent sur le même eTLD+1 (l’application est sur le même eTLD+1 que le locataire Auth0 du domaine personnalisé) | Potentiellement |
SameSite
à un état indéfini ont changé, passant de SameSite
à none
par défaut, puis à lax
.
For example, let’s say you build a new UI and have several services that you proxy to via an Auth0 gateway. At this gateway, you create a cookie session. If you make a cross-origin request, you may see this warning in the Javascript console:
A cookie associated with a cross-site resource (URL) was set without the SameSite attribute. A future release of Chrome will only deliver cookies with cross-site requests if they are set with SameSite=None and Secure. You can review cookies in developer tools under Application>Storage>Cookies and see more details at https://www.chromestatus.com/feature/5088147346030592 and https://www.chromestatus.com/feature/5633521622188032
Mesures à prendre
Pour vous préparer à ce changement, vous devez :- Consulter la liste des navigateurs non pris en charge.
- Définir votre application pour qu’elle utilise
SameSite=none
si elle utiliseresponse_mode=form_post
lors des interactions avec Auth0 (notez que Chrome n’accepte aucune exception, même pourlocalhost
). - Définir votre témoin comme sécurisé si son attribut
SameSite
est égal àNone
. Sinon, il sera rejeté par le navigateur. Si vous utilisez HTTP pour vos callback URL, celles-ci seront inopérantes si vous utilisez de tels témoins pour lier l’état de la demande d’autorisation état/nombre aléatoire. Par conséquent, vous devez soit utiliser HTTPS, soit définirSameSite=lax
.