【问题标题】:How to set SameSite cookie attribute using Apache configuration?如何使用 Apache 配置设置 SameSite cookie 属性?
【发布时间】:2019-06-03 21:35:30
【问题描述】:

我无法在“应用程序”选项卡中使用内置开发人员工具查看 SameSite=Strict。

我在 Apache 配置中添加了下面的 Header 代码

Header always edit Set-Cookie (.*) "$1;SameSite=Strict"
Header edit Set-Cookie ^(.*)$ $1;SameSite=Strict

请告诉我如何使用上述设置设置 SameSite=Strict。

【问题讨论】:

    标签: apache http-headers samesite


    【解决方案1】:

    在我的本地环境(Apache 2.4)中启用 mod_headers 后,我可以通过在我的虚拟主机中添加如下指令来实现这一点:

    <ifmodule mod_headers.c>
    Header always edit Set-Cookie (.*) "$1; SameSite=strict"
    </ifmodule> 
    

    区别在哪里?为什么它对你不起作用?可能是分号后缺少“空格”?

    <ifmodule mod_headers.c>
    # always is similar to "onerrors"
            Header always edit Set-Cookie (.*) "$1; SameSite=strict"
    # success is similar to http 2xx response code
            Header onsuccess edit Set-Cookie (.*) "$1; SameSite=strict"
    # remove duplications (apache sends from both tables always and onsuccess)
            ## https://www.tunetheweb.com/security/http-security-headers/secure-cookies/
            #Strip off double SameSite=strict settings as using above you can sometimes get both
            Header edit Set-Cookie ^(.*);\s?SameSite=strict;?\s?(.*);\s?SameSite=strict;?\s?(.*)$ "$1; $2; $3; SameSite=strict"
    
            #Strip off double ;; settings
            Header edit Set-Cookie ^(.*);\s?;\s?(.*)$ "$1; $2"
    
    </ifmodule>
    

    [apache 手册] (https://httpd.apache.org/docs/2.2/de/mod/mod_headers.html)

    [堆栈讨论] (httpd duplicate Access-Control-Allow-Origin with "Header always set")

    【讨论】:

    • 还有其他原因导致这不起作用。我对 httpd 2.4.46 的做法完全相同,但没有运气。
    • 我遇到了一个问题,Header always edit 不起作用但 Header onsuccess edit 起作用。 docs for mod_headers 解释了为什么 -- alwaysonsuccess 只是两个不同的表,而您要查找的标题可能在一个(或两个)中
    【解决方案2】:

    对于 apache2 >= 2.2.4

    Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure;SameSite=Strict
    

    对于低于 2.2.4 的 apache2

    Header set Set-Cookie HttpOnly;Secure;SameSite=Strict
    

    【讨论】:

    • 第二个例子设置了一个没有cookie名称或cookie值的cookie。
    猜你喜欢
    • 2019-05-14
    • 2020-05-13
    • 2020-07-04
    • 1970-01-01
    • 2020-09-24
    • 2018-11-13
    • 2020-04-25
    • 2021-01-04
    • 2019-10-31
    相关资源
    最近更新 更多