mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2025-03-11 15:34:56 +00:00
app/vmauth: use more clear names for the field and function added at e666d64f1d
- Rename overrideHostHeader() function to hasEmptyHostHeader() - Rename overrideHostHeader field at UserInfo to useBackendHostHeader This should simplify the future maintenance of the code Updates https://github.com/VictoriaMetrics/VictoriaMetrics/pull/6525
This commit is contained in:
parent
ad6af95183
commit
277aad18d8
2 changed files with 7 additions and 5 deletions
|
@ -83,7 +83,9 @@ type UserInfo struct {
|
||||||
|
|
||||||
concurrencyLimitCh chan struct{}
|
concurrencyLimitCh chan struct{}
|
||||||
concurrencyLimitReached *metrics.Counter
|
concurrencyLimitReached *metrics.Counter
|
||||||
overrideHostHeader bool
|
|
||||||
|
// Whether to use backend host header in requests to backend.
|
||||||
|
useBackendHostHeader bool
|
||||||
|
|
||||||
rt http.RoundTripper
|
rt http.RoundTripper
|
||||||
|
|
||||||
|
@ -150,7 +152,7 @@ func (h *Header) MarshalYAML() (any, error) {
|
||||||
return h.sOriginal, nil
|
return h.sOriginal, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func overrideHostHeader(headers []*Header) bool {
|
func hasEmptyHostHeader(headers []*Header) bool {
|
||||||
for _, h := range headers {
|
for _, h := range headers {
|
||||||
if h.Name == "Host" && h.Value == "" {
|
if h.Name == "Host" && h.Value == "" {
|
||||||
return true
|
return true
|
||||||
|
@ -741,7 +743,7 @@ func parseAuthConfig(data []byte) (*AuthConfig, error) {
|
||||||
if err := ui.initURLs(); err != nil {
|
if err := ui.initURLs(); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
ui.overrideHostHeader = overrideHostHeader(ui.HeadersConf.RequestHeaders)
|
ui.useBackendHostHeader = hasEmptyHostHeader(ui.HeadersConf.RequestHeaders)
|
||||||
|
|
||||||
metricLabels, err := ui.getMetricLabels()
|
metricLabels, err := ui.getMetricLabels()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -806,7 +808,7 @@ func parseAuthConfigUsers(ac *AuthConfig) (map[string]*UserInfo, error) {
|
||||||
_ = ac.ms.GetOrCreateGauge(`vmauth_user_concurrent_requests_current`+metricLabels, func() float64 {
|
_ = ac.ms.GetOrCreateGauge(`vmauth_user_concurrent_requests_current`+metricLabels, func() float64 {
|
||||||
return float64(len(ui.concurrencyLimitCh))
|
return float64(len(ui.concurrencyLimitCh))
|
||||||
})
|
})
|
||||||
ui.overrideHostHeader = overrideHostHeader(ui.HeadersConf.RequestHeaders)
|
ui.useBackendHostHeader = hasEmptyHostHeader(ui.HeadersConf.RequestHeaders)
|
||||||
|
|
||||||
rt, err := newRoundTripper(ui.TLSCAFile, ui.TLSCertFile, ui.TLSKeyFile, ui.TLSServerName, ui.TLSInsecureSkipVerify)
|
rt, err := newRoundTripper(ui.TLSCAFile, ui.TLSCertFile, ui.TLSKeyFile, ui.TLSServerName, ui.TLSInsecureSkipVerify)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -235,7 +235,7 @@ func tryProcessingRequest(w http.ResponseWriter, r *http.Request, targetURL *url
|
||||||
req := sanitizeRequestHeaders(r)
|
req := sanitizeRequestHeaders(r)
|
||||||
req.URL = targetURL
|
req.URL = targetURL
|
||||||
|
|
||||||
if req.URL.Scheme == "https" || ui.overrideHostHeader {
|
if req.URL.Scheme == "https" || ui.useBackendHostHeader {
|
||||||
// Override req.Host only for https requests, since https server verifies hostnames during TLS handshake,
|
// Override req.Host only for https requests, since https server verifies hostnames during TLS handshake,
|
||||||
// so it expects the targetURL.Host in the request.
|
// so it expects the targetURL.Host in the request.
|
||||||
// There is no need in overriding the req.Host for http requests, since it is expected that backend server
|
// There is no need in overriding the req.Host for http requests, since it is expected that backend server
|
||||||
|
|
Loading…
Reference in a new issue