Documentation
¶
Index ¶
- Constants
- func CreateHTTPRoundTripper(roundTripperType TransportType, auth *AuthMeta, conf ...*HTTPTransport) (rt http.RoundTripper, err error)
- func GetBearerToken(auth *AuthMeta) string
- func NewTLSConfig(auth *AuthMeta, unsafeSsl bool) (*tls.Config, error)
- func ParseEndpointParams(inputStr string) (url.Values, error)
- func ParseScope(inputStr string) []string
- type AuthMeta
- type BasicAuth
- type CertAuth
- type Config
- func (c *Config) Disabled() bool
- func (c *Config) Enabled(mode Type) bool
- func (c *Config) EnabledBasicAuth() bool
- func (c *Config) EnabledBearerAuth() bool
- func (c *Config) EnabledCustomAuth() bool
- func (c *Config) EnabledOAuth() bool
- func (c *Config) EnabledTLS() bool
- func (c *Config) GetBearerToken() string
- func (c *Config) ToAuthMeta() *AuthMeta
- func (c *Config) Validate() error
- type CustomAuth
- type HTTPTransport
- type OAuth
- type TransportType
- type Type
Constants ¶
const (
AuthModesKey = "authModes"
)
Variables ¶
This section is empty.
Functions ¶
func CreateHTTPRoundTripper ¶ added in v2.6.0
func CreateHTTPRoundTripper(roundTripperType TransportType, auth *AuthMeta, conf ...*HTTPTransport) (rt http.RoundTripper, err error)
func GetBearerToken ¶ added in v2.9.0
func NewTLSConfig ¶ added in v2.9.0
func ParseEndpointParams ¶ added in v2.13.0
ParseEndpointParams parse OAuth endpoint params from URL-encoded query string.
func ParseScope ¶ added in v2.12.0
ParseScope parse OAuth scopes from a comma separated string whitespace is trimmed
Types ¶
type AuthMeta ¶ added in v2.6.0
type AuthMeta struct { // bearer auth EnableBearerAuth bool BearerToken string // basic auth EnableBasicAuth bool Username string Password string // +optional // client certification EnableTLS bool Cert string Key string CA string // oAuth2 EnableOAuth bool OauthTokenURI string Scopes []string ClientID string ClientSecret string EndpointParams url.Values // custom auth header EnableCustomAuth bool CustomAuthHeader string CustomAuthValue string }
AuthMeta is the metadata for the authentication types Deprecated: use Config instead
type BasicAuth ¶ added in v2.15.0
type BasicAuth struct { Username string `keda:"name=username, order=authParams"` Password string `keda:"name=password, order=authParams"` }
BasicAuth is a basic authentication type
type CertAuth ¶ added in v2.15.0
type CertAuth struct { Cert string `keda:"name=cert, order=authParams"` Key string `keda:"name=key, order=authParams"` CA string `keda:"name=ca, order=authParams"` }
CertAuth is a client certificate authentication type
type Config ¶ added in v2.15.0
type Config struct { Modes []Type `` /* 130-byte string literal not displayed */ BearerToken string `keda:"name=bearerToken, order=authParams, optional"` BasicAuth `keda:"optional"` CertAuth `keda:"optional"` OAuth `keda:"optional"` CustomAuth `keda:"optional"` }
Config is the configuration for the authentication types
func (*Config) EnabledBasicAuth ¶ added in v2.15.0
func (*Config) EnabledBearerAuth ¶ added in v2.15.0
func (*Config) EnabledCustomAuth ¶ added in v2.15.0
func (*Config) EnabledOAuth ¶ added in v2.15.0
func (*Config) EnabledTLS ¶ added in v2.15.0
helpers for checking enabled auth modes
func (*Config) GetBearerToken ¶ added in v2.15.0
GetBearerToken returns the bearer token with the Bearer prefix
func (*Config) ToAuthMeta ¶ added in v2.15.0
ToAuthMeta converts the Config to deprecated AuthMeta
type CustomAuth ¶ added in v2.15.0
type CustomAuth struct { CustomAuthHeader string `keda:"name=customAuthHeader, order=authParams"` CustomAuthValue string `keda:"name=customAuthValue, order=authParams"` }
CustomAuth is a custom header authentication type
type HTTPTransport ¶ added in v2.6.0
type OAuth ¶ added in v2.15.0
type OAuth struct { OauthTokenURI string `keda:"name=oauthTokenURI, order=authParams"` Scopes []string `keda:"name=scopes, order=authParams"` ClientID string `keda:"name=clientID, order=authParams"` ClientSecret string `keda:"name=clientSecret, order=authParams"` EndpointParams url.Values `keda:"name=endpointParams, order=authParams"` }
OAuth is an oAuth2 authentication type
type TransportType ¶ added in v2.6.0
type TransportType int
TransportType is type of http transport
const ( NetHTTP TransportType = iota // NetHTTP standard Go net/http client. FastHTTP // FastHTTP Fast http client. )
type Type ¶
type Type string
Type describes the authentication type used in a scaler
const ( // APIKeyAuthType is an auth type using an API key APIKeyAuthType Type = "apiKey" // BasicAuthType is an auth type using basic auth BasicAuthType Type = "basic" // TLSAuthType is an auth type using TLS TLSAuthType Type = "tls" // BearerAuthType is an auth type using a bearer token BearerAuthType Type = "bearer" // CustomAuthType is an auth type using a custom header CustomAuthType Type = "custom" // OAuthType is an auth type using a oAuth2 OAuthType Type = "oauth" )