Сбросить заголовок авторизации в лаке, а также отправить заголовок в бэкэнд

Я хочу удалить заголовок Authorization в varnish vcl, но также необходимо отправить этот заголовок в серверную часть.

sub vcl_recv {
    unset req.http.Authorization;
}

1 ответ

Это выглядит как плохая идея, но это определенно выполнимо, используя некоторые базовые VCL. Например:

sub vcl_recv {
    if (req.http.Authorization) {
        set req.http.Authorization-Copy = req.http.Authorization;
        unset req.http.Authorization;
    } else {
        unset set req.http.Authorization-Copy;
    }
}

sub vcl_backend_fetch {
    if (bereq.http.Authorization-Copy) {
        set bereq.http.Authorization = bereq.http.Authorization-Copy;
        unset bereq.http.Authorization-Copy;
    }
}
Другие вопросы по тегам