configuration

package
v0.38.2-beta.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 25, 2020 License: Apache-2.0 Imports: 23 Imported by: 11

Documentation

Index

Constants

View Source
const (
	ViperKeyProxyReadTimeout           = "serve.proxy.timeout.read"
	ViperKeyProxyWriteTimeout          = "serve.proxy.timeout.write"
	ViperKeyProxyIdleTimeout           = "serve.proxy.timeout.idle"
	ViperKeyProxyServeAddressHost      = "serve.proxy.host"
	ViperKeyProxyServeAddressPort      = "serve.proxy.port"
	ViperKeyAPIServeAddressHost        = "serve.api.host"
	ViperKeyAPIServeAddressPort        = "serve.api.port"
	ViperKeyAPIReadTimeout             = "serve.api.timeout.read"
	ViperKeyAPIWriteTimeout            = "serve.api.timeout.write"
	ViperKeyAPIIdleTimeout             = "serve.api.timeout.idle"
	ViperKeyPrometheusServeAddressHost = "serve.prometheus.host"
	ViperKeyPrometheusServeAddressPort = "serve.prometheus.port"
	ViperKeyPrometheusServeMetricsPath = "serve.prometheus.metrics_path"
	ViperKeyAccessRuleRepositories     = "access_rules.repositories"
	ViperKeyAccessRuleMatchingStrategy = "access_rules.matching_strategy"
)
View Source
const (
	ViperKeyAuthorizerAllowIsEnabled = "authorizers.allow.enabled"

	ViperKeyAuthorizerDenyIsEnabled = "authorizers.deny.enabled"

	ViperKeyAuthorizerKetoEngineACPORYIsEnabled = "authorizers.keto_engine_acp_ory.enabled"

	ViperKeyAuthorizerRemoteIsEnabled = "authorizers.remote.enabled"

	ViperKeyAuthorizerRemoteJSONIsEnabled = "authorizers.remote_json.enabled"
)

Authorizers

View Source
const (
	ViperKeyMutatorCookieIsEnabled = "mutators.cookie.enabled"

	ViperKeyMutatorHeaderIsEnabled = "mutators.header.enabled"

	ViperKeyMutatorNoopIsEnabled = "mutators.noop.enabled"

	ViperKeyMutatorHydratorIsEnabled = "mutators.hydrator.enabled"

	ViperKeyMutatorIDTokenIsEnabled = "mutators.id_token.enabled"
	ViperKeyMutatorIDTokenJWKSURL   = "mutators.id_token.config.jwks_url"
)

Mutators

View Source
const (
	// anonymous
	ViperKeyAuthenticatorAnonymousIsEnabled = "authenticators.anonymous.enabled"

	// noop
	ViperKeyAuthenticatorNoopIsEnabled = "authenticators.noop.enabled"

	// cookie session
	ViperKeyAuthenticatorCookieSessionIsEnabled = "authenticators.cookie_session.enabled"

	// jwt
	ViperKeyAuthenticatorJWTIsEnabled = "authenticators.jwt.enabled"

	// oauth2_client_credentials
	ViperKeyAuthenticatorOAuth2ClientCredentialsIsEnabled = "authenticators.oauth2_client_credentials.enabled"

	// oauth2_token_introspection
	ViperKeyAuthenticatorOAuth2TokenIntrospectionIsEnabled = "authenticators.oauth2_introspection.enabled"

	// unauthorized
	ViperKeyAuthenticatorUnauthorizedIsEnabled = "authenticators.unauthorized.enabled"
)

Authenticators

View Source
const (
	ViperKeyErrors                         = "errors.handlers"
	ViperKeyErrorsFallback                 = "errors.fallback"
	ViperKeyErrorsJSONIsEnabled            = ViperKeyErrors + ".json.enabled"
	ViperKeyErrorsRedirectIsEnabled        = ViperKeyErrors + ".redirect.enabled"
	ViperKeyErrorsWWWAuthenticateIsEnabled = ViperKeyErrors + ".www_authenticate.enabled"
)

Errors

View Source
const (
	ForbiddenStrategyErrorType = "forbidden"
)

Variables

This section is empty.

Functions

func MustValidate

func MustValidate(l logrus.FieldLogger, p Provider)

Types

type MatchingStrategy

type MatchingStrategy string

MatchingStrategy defines matching strategy such as Regexp or Glob. Empty string defaults to "regexp".

const (
	Regexp MatchingStrategy = "regexp"
	Glob   MatchingStrategy = "glob"
)

Possible matching strategies.

type Provider

type Provider interface {
	CORSEnabled(iface string) bool
	CORSOptions(iface string) cors.Options

	ProviderAuthenticators
	ProviderErrorHandlers
	ProviderAuthorizers
	ProviderMutators

	ProxyReadTimeout() time.Duration
	ProxyWriteTimeout() time.Duration
	ProxyIdleTimeout() time.Duration

	APIReadTimeout() time.Duration
	APIWriteTimeout() time.Duration
	APIIdleTimeout() time.Duration

	AccessRuleRepositories() []url.URL
	AccessRuleMatchingStrategy() MatchingStrategy

	ProxyServeAddress() string
	APIServeAddress() string
	PrometheusServeAddress() string

	PrometheusMetricsPath() string

	ToScopeStrategy(value string, key string) fosite.ScopeStrategy
	ParseURLs(sources []string) ([]url.URL, error)
	JSONWebKeyURLs() []string

	TracingServiceName() string
	TracingProvider() string
	TracingJaegerConfig() *tracing.JaegerConfig
}

type ProviderAuthenticators

type ProviderAuthenticators interface {
	AuthenticatorConfig(id string, overrides json.RawMessage, destination interface{}) error
	AuthenticatorIsEnabled(id string) bool
}

type ProviderAuthorizers

type ProviderAuthorizers interface {
	AuthorizerConfig(id string, overrides json.RawMessage, destination interface{}) error
	AuthorizerIsEnabled(id string) bool
}

type ProviderErrorHandlers

type ProviderErrorHandlers interface {
	ErrorHandlerConfig(id string, override json.RawMessage, dest interface{}) error
	ErrorHandlerIsEnabled(id string) bool
	ErrorHandlerFallbackSpecificity() []string
}

type ProviderMutators

type ProviderMutators interface {
	MutatorConfig(id string, overrides json.RawMessage, destination interface{}) error
	MutatorIsEnabled(id string) bool
}

type ViperProvider

type ViperProvider struct {
	// contains filtered or unexported fields
}

func NewViperProvider

func NewViperProvider(l logrus.FieldLogger) *ViperProvider

func (*ViperProvider) APIIdleTimeout

func (v *ViperProvider) APIIdleTimeout() time.Duration

func (*ViperProvider) APIReadTimeout

func (v *ViperProvider) APIReadTimeout() time.Duration

func (*ViperProvider) APIServeAddress

func (v *ViperProvider) APIServeAddress() string

func (*ViperProvider) APIWriteTimeout

func (v *ViperProvider) APIWriteTimeout() time.Duration

func (*ViperProvider) AccessRuleMatchingStrategy

func (v *ViperProvider) AccessRuleMatchingStrategy() MatchingStrategy

AccessRuleMatchingStrategy returns current MatchingStrategy.

func (*ViperProvider) AccessRuleRepositories

func (v *ViperProvider) AccessRuleRepositories() []url.URL

func (*ViperProvider) AuthenticatorConfig

func (v *ViperProvider) AuthenticatorConfig(id string, override json.RawMessage, dest interface{}) error

func (*ViperProvider) AuthenticatorIsEnabled

func (v *ViperProvider) AuthenticatorIsEnabled(id string) bool

func (*ViperProvider) AuthorizerConfig

func (v *ViperProvider) AuthorizerConfig(id string, override json.RawMessage, dest interface{}) error

func (*ViperProvider) AuthorizerIsEnabled

func (v *ViperProvider) AuthorizerIsEnabled(id string) bool

func (*ViperProvider) CORSEnabled

func (v *ViperProvider) CORSEnabled(iface string) bool

func (*ViperProvider) CORSOptions

func (v *ViperProvider) CORSOptions(iface string) cors.Options

func (*ViperProvider) ErrorHandlerConfig

func (v *ViperProvider) ErrorHandlerConfig(id string, override json.RawMessage, dest interface{}) error

func (*ViperProvider) ErrorHandlerFallbackSpecificity

func (v *ViperProvider) ErrorHandlerFallbackSpecificity() []string

func (*ViperProvider) ErrorHandlerIsEnabled

func (v *ViperProvider) ErrorHandlerIsEnabled(id string) bool

func (*ViperProvider) JSONWebKeyURLs

func (v *ViperProvider) JSONWebKeyURLs() []string

func (*ViperProvider) MutatorConfig

func (v *ViperProvider) MutatorConfig(id string, override json.RawMessage, dest interface{}) error

func (*ViperProvider) MutatorIsEnabled

func (v *ViperProvider) MutatorIsEnabled(id string) bool

func (*ViperProvider) ParseURLs

func (v *ViperProvider) ParseURLs(sources []string) ([]url.URL, error)

func (*ViperProvider) PipelineConfig

func (v *ViperProvider) PipelineConfig(prefix, id string, override json.RawMessage, dest interface{}) error

func (*ViperProvider) PrometheusMetricsPath

func (v *ViperProvider) PrometheusMetricsPath() string

func (*ViperProvider) PrometheusServeAddress

func (v *ViperProvider) PrometheusServeAddress() string

func (*ViperProvider) ProxyIdleTimeout

func (v *ViperProvider) ProxyIdleTimeout() time.Duration

func (*ViperProvider) ProxyReadTimeout

func (v *ViperProvider) ProxyReadTimeout() time.Duration

func (*ViperProvider) ProxyServeAddress

func (v *ViperProvider) ProxyServeAddress() string

func (*ViperProvider) ProxyWriteTimeout

func (v *ViperProvider) ProxyWriteTimeout() time.Duration

func (*ViperProvider) ToScopeStrategy

func (v *ViperProvider) ToScopeStrategy(value string, key string) fosite.ScopeStrategy

func (*ViperProvider) TracingJaegerConfig

func (v *ViperProvider) TracingJaegerConfig() *tracing.JaegerConfig

func (*ViperProvider) TracingProvider

func (v *ViperProvider) TracingProvider() string

func (*ViperProvider) TracingServiceName

func (v *ViperProvider) TracingServiceName() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL