Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Authorization ¶ added in v1.58.0
type Authorization struct { Type string `yaml:"type,omitempty"` Credentials string `yaml:"credentials,omitempty"` CredentialsFile string `yaml:"credentials_file,omitempty"` }
Authorization represents generic authorization config.
See https://prometheus.io/docs/prometheus/latest/configuration/configuration/
type BasicAuthConfig ¶
type BasicAuthConfig struct { Username string `yaml:"username"` Password string `yaml:"password,omitempty"` PasswordFile string `yaml:"password_file,omitempty"` }
BasicAuthConfig represents basic auth config.
type Config ¶
type Config struct { // Optional TLS config TLSRootCA *x509.CertPool TLSServerName string TLSInsecureSkipVerify bool // contains filtered or unexported fields }
Config is auth config.
func NewConfig ¶
func NewConfig(baseDir string, az *Authorization, basicAuth *BasicAuthConfig, bearerToken, bearerTokenFile string, o *OAuth2Config, tlsConfig *TLSConfig) (*Config, error)
NewConfig creates auth config from the given args.
func (*Config) GetAuthHeader ¶ added in v1.60.0
GetAuthHeader returns optional `Authorization: ...` http header.
func (*Config) NewTLSConfig ¶
NewTLSConfig returns new TLS config for the given ac.
type HTTPClientConfig ¶ added in v1.58.0
type HTTPClientConfig struct { Authorization *Authorization `yaml:"authorization,omitempty"` BasicAuth *BasicAuthConfig `yaml:"basic_auth,omitempty"` BearerToken string `yaml:"bearer_token,omitempty"` BearerTokenFile string `yaml:"bearer_token_file,omitempty"` OAuth2 *OAuth2Config `yaml:"oauth2,omitempty"` TLSConfig *TLSConfig `yaml:"tls_config,omitempty"` }
HTTPClientConfig represents http client config.
type OAuth2Config ¶ added in v1.60.0
type OAuth2Config struct { ClientID string `yaml:"client_id"` ClientSecret string `yaml:"client_secret"` ClientSecretFile string `yaml:"client_secret_file"` Scopes []string `yaml:"scopes"` TokenURL string `yaml:"token_url"` EndpointParams map[string]string `yaml:"endpoint_params"` }
OAuth2Config represent OAuth2 configuration
func (*OAuth2Config) String ¶ added in v1.60.0
func (o *OAuth2Config) String() string
String returns string representation of o.
type ProxyClientConfig ¶ added in v1.58.0
type ProxyClientConfig struct { Authorization *Authorization `yaml:"proxy_authorization,omitempty"` BasicAuth *BasicAuthConfig `yaml:"proxy_basic_auth,omitempty"` BearerToken string `yaml:"proxy_bearer_token,omitempty"` BearerTokenFile string `yaml:"proxy_bearer_token_file,omitempty"` TLSConfig *TLSConfig `yaml:"proxy_tls_config,omitempty"` }
ProxyClientConfig represents proxy client config.
type TLSConfig ¶
type TLSConfig struct { CAFile string `yaml:"ca_file,omitempty"` CertFile string `yaml:"cert_file,omitempty"` KeyFile string `yaml:"key_file,omitempty"` ServerName string `yaml:"server_name,omitempty"` InsecureSkipVerify bool `yaml:"insecure_skip_verify,omitempty"` }
TLSConfig represents TLS config.
See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#tls_config