testcookie_samesite

The `testcookie_samesite` directive specifies the SameSite attribute for cookies used in the NGINX testcookie robot mitigation module.

Syntaxtestcookie_samesite value;
DefaultNone
Contexthttp, server, location
Arguments1

Description

The testcookie_samesite directive is a crucial component of the NGINX testcookie module that helps mitigate automated bot traffic by utilizing cookies to establish user validity through challenge-response mechanisms. This directive specifically sets the SameSite attribute for the cookies issued by the module, which controls whether these cookies can be sent along with cross-origin requests. The SameSite attribute can take one of three values: 'Lax', 'Strict', or 'None'. 'Lax' allows cookies to be sent when navigating from an external site, while 'Strict' enforces cookies to be used only in a first-party context, disallowing any cross-site requests. 'None' means the cookies will be sent regardless of the origin, thus allowing cross-origin requests.

When configuring the testcookie_samesite directive, developers must consider the implications of the SameSite value chosen. For example, setting it to 'Lax' generally provides a good balance between usability and security, as it allows cookies to be sent with top-level navigations, helping maintain user sessions while protecting against CSRF (Cross-Site Request Forgery) attacks in certain scenarios. Choosing 'Strict' might enhance security further but could hinder user experience in cases where cross-origin requests are necessary. Conversely, setting it to 'None' deactivates SameSite restrictions, which might expose the application to potential security vulnerabilities such as CSRF attacks.

Config Example

testcookie_samesite Lax;
⚠

Using 'None' requires the Secure attribute to be set on cookies, otherwise they may not be sent in some browsers.

⚠

Not setting the SameSite attribute at all can lead to unintended cross-origin requests, which may be exploited.

← Back to all directives