@@ -96,6 +96,7 @@ func (l *LegacyOptions) ToOptions() (*Options, error) {
9696 return nil, fmt.Errorf("error converting provider: %v", err)
9797 }
9898 l.Options.Providers = providers
99+ l.Options.EnsureDefaults()
99100
100101 return &l.Options, nil
101102}
@@ -178,6 +179,10 @@ func (l *LegacyUpstreams) convert() (UpstreamConfig, error) {
178179 upstream.URI = ""
179180 upstream.InsecureSkipTLSVerify = ptr.Ptr(false)
180181 upstream.DisableKeepAlives = ptr.Ptr(false)
182+ upstream.PassHostHeader = nil
183+ upstream.ProxyWebSockets = nil
184+ upstream.FlushInterval = nil
185+ upstream.Timeout = nil
181186 case "unix":
182187 upstream.Path = "/"
183188 }
@@ -284,7 +289,8 @@ func getBasicAuthHeader(preferEmailToUser bool, basicAuthPassword string) Header
284289 }
285290
286291 return Header{
287− Name: "Authorization",
292+ Name: "Authorization",
293+ PreserveRequestValue: ptr.Ptr(false),
288294 Values: []HeaderValue{
289295 {
290296 ClaimSource: &ClaimSource{
@@ -302,7 +308,8 @@ func getBasicAuthHeader(preferEmailToUser bool, basicAuthPassword string) Header
302308func getPassUserHeaders(preferEmailToUser bool) []Header {
303309 headers := []Header{
304310 {
305− Name: "X-Forwarded-Groups",
311+ Name: "X-Forwarded-Groups",
312+ PreserveRequestValue: ptr.Ptr(false),
306313 Values: []HeaderValue{
307314 {
308315 ClaimSource: &ClaimSource{
@@ -316,7 +323,8 @@ func getPassUserHeaders(preferEmailToUser bool) []Header {
316323 if preferEmailToUser {
317324 return append(headers,
318325 Header{
319− Name: "X-Forwarded-User",
326+ Name: "X-Forwarded-User",
327+ PreserveRequestValue: ptr.Ptr(false),
320328 Values: []HeaderValue{
321329 {
322330 ClaimSource: &ClaimSource{
@@ -330,7 +338,8 @@ func getPassUserHeaders(preferEmailToUser bool) []Header {
330338
331339 return append(headers,
332340 Header{
333− Name: "X-Forwarded-User",
341+ Name: "X-Forwarded-User",
342+ PreserveRequestValue: ptr.Ptr(false),
334343 Values: []HeaderValue{
335344 {
336345 ClaimSource: &ClaimSource{
@@ -340,7 +349,8 @@ func getPassUserHeaders(preferEmailToUser bool) []Header {
340349 },
341350 },
342351 Header{
343− Name: "X-Forwarded-Email",
352+ Name: "X-Forwarded-Email",
353+ PreserveRequestValue: ptr.Ptr(false),
344354 Values: []HeaderValue{
345355 {
346356 ClaimSource: &ClaimSource{
@@ -354,7 +364,8 @@ func getPassUserHeaders(preferEmailToUser bool) []Header {
354364
355365func getPassAccessTokenHeader() Header {
356366 return Header{
357− Name: "X-Forwarded-Access-Token",
367+ Name: "X-Forwarded-Access-Token",
368+ PreserveRequestValue: ptr.Ptr(false),
358369 Values: []HeaderValue{
359370 {
360371 ClaimSource: &ClaimSource{
@@ -367,7 +378,8 @@ func getPassAccessTokenHeader() Header {
367378
368379func getAuthorizationHeader() Header {
369380 return Header{
370− Name: "Authorization",
381+ Name: "Authorization",
382+ PreserveRequestValue: ptr.Ptr(false),
371383 Values: []HeaderValue{
372384 {
373385 ClaimSource: &ClaimSource{
@@ -381,7 +393,8 @@ func getAuthorizationHeader() Header {
381393
382394func getPreferredUsernameHeader() Header {
383395 return Header{
384− Name: "X-Forwarded-Preferred-Username",
396+ Name: "X-Forwarded-Preferred-Username",
397+ PreserveRequestValue: ptr.Ptr(false),
385398 Values: []HeaderValue{
386399 {
387400 ClaimSource: &ClaimSource{
@@ -395,7 +408,8 @@ func getPreferredUsernameHeader() Header {
395408func getXAuthRequestHeaders() []Header {
396409 headers := []Header{
397410 {
398− Name: "X-Auth-Request-User",
411+ Name: "X-Auth-Request-User",
412+ PreserveRequestValue: ptr.Ptr(false),
399413 Values: []HeaderValue{
400414 {
401415 ClaimSource: &ClaimSource{
@@ -405,7 +419,8 @@ func getXAuthRequestHeaders() []Header {
405419 },
406420 },
407421 {
408− Name: "X-Auth-Request-Email",
422+ Name: "X-Auth-Request-Email",
423+ PreserveRequestValue: ptr.Ptr(false),
409424 Values: []HeaderValue{
410425 {
411426 ClaimSource: &ClaimSource{
@@ -415,7 +430,8 @@ func getXAuthRequestHeaders() []Header {
415430 },
416431 },
417432 {
418− Name: "X-Auth-Request-Preferred-Username",
433+ Name: "X-Auth-Request-Preferred-Username",
434+ PreserveRequestValue: ptr.Ptr(false),
419435 Values: []HeaderValue{
420436 {
421437 ClaimSource: &ClaimSource{
@@ -425,7 +441,8 @@ func getXAuthRequestHeaders() []Header {
425441 },
426442 },
427443 {
428− Name: "X-Auth-Request-Groups",
444+ Name: "X-Auth-Request-Groups",
445+ PreserveRequestValue: ptr.Ptr(false),
429446 Values: []HeaderValue{
430447 {
431448 ClaimSource: &ClaimSource{
@@ -441,7 +458,8 @@ func getXAuthRequestHeaders() []Header {
441458
442459func getXAuthRequestAccessTokenHeader() Header {
443460 return Header{
444− Name: "X-Auth-Request-Access-Token",
461+ Name: "X-Auth-Request-Access-Token",
462+ PreserveRequestValue: ptr.Ptr(false),
445463 Values: []HeaderValue{
446464 {
447465 ClaimSource: &ClaimSource{