Contributed by
Nicolas Grekas
in #28447 and #28446.

在 PHP 中的 setcookie()session_set_cookie_params() 函数中把 secure 参数设为 true,可令cookie仅在连接是安全的和使用HTTPS时才被发送。

在 Symfony 程序中你可以通过 framework.session.cookie_secure 选项 来控制此种行为,它是个默认为 false 的布尔值。为了提高程序的安全性,在 Symfony 4.2 中我们让cookie的安全性实现了自动化

全新 cookie_secure 选项的默认值是 null,可在使用HTTPS进行请求时令cookies安全,并且在使用HTTP进行请求时不改变cookie。这个新行为是一个较好的平衡点,既让程序“默认是安全的”,又不会破坏现有程序。

据此,在 Remember Me 功能 中使用的cookies,现在继承了 framework.session.cookie_* 选项中的默认配置值,因此这个新的“自动安全”之行为也就应用于其中了。

在2019年11月推出的 Symfony 5.0 中,Cookie 类的构造器中的 $secure 参数将从 false 变为 null。此外, $samesite 参数的默认值将从 null 变为 lax 以便使用 全新的 SameSite cookie 配置项