Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the tyk v1alpha1 API group +kubebuilder:object:generate=true +groupName=tyk.tyk.io
Index ¶
- Variables
- func Marshal(v interface{}) ([]byte, error)
- type APIDefinitionSpec
- type APILimit
- type AccessDefinition
- type AccessSpec
- type AccessTypeEnum
- type ApiDefinition
- func (in *ApiDefinition) DeepCopy() *ApiDefinition
- func (in *ApiDefinition) DeepCopyInto(out *ApiDefinition)
- func (in *ApiDefinition) DeepCopyObject() runtime.Object
- func (in *ApiDefinition) Default()
- func (in *ApiDefinition) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (in *ApiDefinition) ValidateCreate() error
- func (in *ApiDefinition) ValidateDelete() error
- func (in *ApiDefinition) ValidateUpdate(old runtime.Object) error
- type ApiDefinitionList
- type ApiDefinitionStatus
- type AuthConfig
- type AuthProviderCode
- type AuthProviderMeta
- type AuthTypeEnum
- type AuthorizeTypeEnum
- type BasicAuthMeta
- type BundleManifest
- type CORS
- type CacheMeta
- type CacheOptions
- type CheckCommand
- type CircuitBreakerMeta
- type Config
- type DataSourceConfig
- type EndPointMeta
- type EndpointMethodAction
- type EndpointMethodMeta
- type EventHandlerMetaConfig
- type EventHandlerTriggerConfig
- type ExtendedPathsSet
- type Float64
- type Gateway
- type GatewayList
- type GatewaySpec
- type GatewayStatus
- type GlobalRateLimit
- type GraphQLConfig
- type GraphQLExecutionMode
- type GraphQLPlayground
- type HardTimeoutMeta
- type HeaderInjectionMeta
- type HostCheckObject
- type HttpMethod
- type IdExtractorConfig
- type IdExtractorSource
- type IdExtractorType
- type InternalMeta
- type MappingConfiguration
- type MethodTransformMeta
- type MiddlewareDefinition
- type MiddlewareDriver
- type MiddlewareIdExtractor
- type MiddlewareSection
- type NotificationsManager
- type OAuth2Meta
- type OIDProviderConfig
- type OpenIDOptions
- type Organization
- type OrganizationList
- type OrganizationSpec
- type OrganizationStatus
- type Percent
- type PolicyPartitions
- type Proxy
- type ProxyTransport
- type RequestInputType
- type RequestSigningMeta
- type RequestSizeMeta
- type ResponseProcessor
- type RewriteToInternal
- type RoutingTrigger
- type RoutingTriggerOnType
- type RoutingTriggerOptions
- type SecurityPolicy
- func (in *SecurityPolicy) DeepCopy() *SecurityPolicy
- func (in *SecurityPolicy) DeepCopyInto(out *SecurityPolicy)
- func (in *SecurityPolicy) DeepCopyObject() runtime.Object
- func (r *SecurityPolicy) Default()
- func (r *SecurityPolicy) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *SecurityPolicy) ValidateCreate() error
- func (r *SecurityPolicy) ValidateDelete() error
- func (r *SecurityPolicy) ValidateUpdate(old runtime.Object) error
- type SecurityPolicyList
- type SecurityPolicySpec
- type SecurityPolicyStatus
- type ServiceDiscoveryConfiguration
- type SessionProviderCode
- type SessionProviderMeta
- type SignatureConfig
- type SourceConfig
- type StatusCodeTypeNameMapping
- type StorageEngineCode
- type StorageOptionsConf
- type StringRegexMap
- type Target
- type TargetInternal
- type TemplateData
- type TemplateMeta
- type TemplateMode
- type TrackEndpointMeta
- type TransformJQMeta
- type TykEvent
- type TykEventHandlerName
- type TypeFieldConfiguration
- type URLRewriteMeta
- type UptimeTestConfig
- type UptimeTests
- type ValidatePathMeta
- type VersionData
- type VersionDefinition
- type VersionInfo
- type VersionInfoPaths
- type VirtualMeta
- type Webhook
- type WebhookList
- type WebhookMethod
- type WebhookSpec
- type WebhookStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "tyk.tyk.io", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
Types ¶
type APIDefinitionSpec ¶
type APIDefinitionSpec struct { // For server use only, do not use ID string `json:"id,omitempty"` // Only set this field if you are referring // To an existing API in def. // The Operator will use this API ID to link the CRD with the API in Tyk // Note the values in the CRD will become the new source of truth, overriding the existing API Definition APIID string `json:"api_id,omitempty"` Name string `json:"name"` // OrgID is overwritten - no point setting this OrgID string `json:"org_id,omitempty"` // Active specifies if the api is enabled or not Active bool `json:"active,omitempty"` // Proxy Proxy Proxy `json:"proxy"` // +optional ListenPort int `json:"listen_port"` // +kubebuilder:validation:Enum=http;https;tcp;tls Protocol string `json:"protocol"` EnableProxyProtocol bool `json:"enable_proxy_protocol,omitempty"` // Domain represents a custom host header that the gateway will listen on for this API Domain string `json:"domain,omitempty"` // DoNotTrack disables endpoint tracking for this API. Default is true, you need to explicitly set it to false DoNotTrack *bool `json:"do_not_track,omitempty"` // UseKeylessAccess will switch off all key checking. Some analytics will still be recorded, but rate-limiting, // quotas and security policies will not be possible (there is no session to attach requests to). UseKeylessAccess bool `json:"use_keyless,omitempty"` // UseOAuth2 enables oauth2 authorization UseOauth2 bool `json:"use_oauth2,omitempty"` //+optional Oauth2Meta *OAuth2Meta `json:"oauth_meta,omitempty"` // StripAuthData ensures that any security tokens used for accessing APIs are stripped and not leaked to the upstream StripAuthData bool `json:"strip_auth_data,omitempty"` Auth AuthConfig `json:"auth,omitempty"` // +optional AuthConfigs map[string]AuthConfig `json:"auth_configs,omitempty"` // UseStandardAuth enables simple bearer token authentication UseStandardAuth bool `json:"use_standard_auth,omitempty"` // EnableJWT set JWT as the access method for this API. EnableJWT bool `json:"enable_jwt,omitempty"` EnableCoProcessAuth bool `json:"enable_coprocess_auth,omitempty"` // JWTSigningMethod algorithm used to sign jwt token // +kubebuilder:validation:Enum=rsa;hmac;ecdsa JWTSigningMethod string `json:"jwt_signing_method,omitempty"` // JWTSource Must either be a base64 encoded valid RSA/HMAC key or a url to a // resource serving JWK, this key will then be used to validate inbound JWT and // throttle them according to the centralised JWT options and fields set in the // configuration. JWTSource string `json:"jwt_source,omitempty"` // JWTIdentityBaseField Identifies the user or identity to be used in the // Claims of the JWT. This will fallback to sub if not found. This field forms // the basis of a new “virtual” token that gets used after validation. It means // policy attributes are carried forward through Tyk for attribution purposes. JWTIdentityBaseField string `json:"jwt_identity_base_field,omitempty"` // JWTClientIDBaseField is the name of the field on JWT claim to use for client // id. This field is mutually exclusive to jwt_identity_base_field, meaning you // can only set/use one and jwt_identity_base_field takes precedence when both // are set. JWTClientIDBaseField string `json:"jwt_client_base_field,omitempty"` // JWTPolicyFieldName The policy ID to apply to the virtual token generated for a JWT JWTPolicyFieldName string `json:"jwt_policy_field_name,omitempty"` // JWTDefaultPolicies is a list of policies that will be used when base policy // can't be extracted from the JWT token. When this list is provided the first // element will be used as the base policy while the rest of elements will be applied. JWTDefaultPolicies []string `json:"jwt_default_policies,omitempty"` // JWTIssuedAtValidationSkew adds validation for issued at JWT claim. // Given // now = current unix time // skew = jwt_issued_at_validation_skew // iat = the issued at jwt claim // If iat > (now + skew) then validation will fail with "token used before issued" JWTIssuedAtValidationSkew uint64 `json:"jwt_issued_at_validation_skew,omitempty"` // JWTExpiresAtValidationSkew adds validation for expired at JWT claim. // Given // now = current unix time // skew = jwt_expires_at_validation_skew // exp = expired at // If exp > (now - skew) then validation will fail with "token has expired" JWTExpiresAtValidationSkew uint64 `json:"jwt_expires_at_validation_skew,omitempty"` // JWTNotBeforeValidationSkew adds validation for not before JWT claim. // Given // now = current unix time // skew = jwt_not_before_validation_skew // nbf = the not before jwt claim // If nbf > (now + skew) then validation will fail with "token is not valid yet" JWTNotBeforeValidationSkew uint64 `json:"jwt_not_before_validation_skew,omitempty"` // JWTSkipKid when true we ingore using kid as the identity for a JWT token and // instead use jwt_identity_base_field if it was set or fallback to sub JWT // claim. JWTSkipKid bool `json:"jwt_skip_kid,omitempty"` // JWTScopeToPolicyMapping this is a mapping of scope value to policy id. If // this is set then a scope value found in this map will make the mappend // policy to be applied. JWTScopeToPolicyMapping map[string]string `json:"jwt_scope_to_policy_mapping,omitempty"` // JWTScopeClaimName overides the key used for scope values in the JWT claims. // By default the value is "scope" JWTScopeClaimName string `json:"jwt_scope_claim_name,omitempty"` VersionDefinition VersionDefinition `json:"definition,omitempty"` VersionData VersionData `json:"version_data,omitempty"` CustomMiddleware MiddlewareSection `json:"custom_middleware,omitempty"` CacheOptions CacheOptions `json:"cache_options,omitempty"` // SessionLifetime this is duration in seconds before the session key expires // in redis. // // Example: // If you want the session keys to be alive only 24 hours you can set this // value to 86400 that we can break down to // 60 * 60 * 24 = Total seconds in a day //+optional SessionLifetime int64 `json:"session_lifetime,omitempty"` // Internal tells Tyk Gateway that this is a virtual API. It can only be routed to from other APIs. Internal bool `json:"internal,omitempty"` // EnableIPWhiteListing activates the ip whitelisting middleware. EnableIPWhiteListing bool `json:"enable_ip_whitelisting,omitempty"` // AllowedIPs is a list of IP address that are whitelisted.When this is // provided all IP address that is not on this list will be blocked and a 403 http // status will be returned. The IP address can be IPv4 or IPv6.IP in // CIDR notation is also supported. AllowedIPs []string `json:"allowed_ips,omitempty"` // EnableIPBlacklisting activates the ip blacklisting middleware. EnableIPBlacklisting bool `json:"enable_ip_blacklisting,omitempty"` // BlacklistedIPs is a list of IP address that will be blacklisted.This means if // origin IP matches any IP in this list a 403 http status code will be // returned. The IP address can be IPv4 or IPv6. IP in CIDR notation is also // supported. BlacklistedIPs []string `json:"blacklisted_ips,omitempty"` ResponseProcessors []ResponseProcessor `json:"response_processors,omitempty"` CORS CORS `json:"CORS,omitempty"` // Certificates is a list of Tyk Certificate IDs. e.g. orgid+fingerprint. Use CertificateSecretNames if using cert-manager Certificates []string `json:"certificates,omitempty"` // CertificateSecretNames represents the names of the secrets that the controller should look for in the in the current // namespace which contain the certificates. CertificateSecretNames []string `json:"certificate_secret_names,omitempty"` // Tags are named gateway nodes which tell gateway clusters whether to load an API or not. // for example, to load the API in an ARA gateway, you might want to include an `edge` tag. Tags []string `json:"tags,omitempty"` // EnableContextVars extracts request context variables from the start of the middleware chain. // Set this to true to make them available to your transforms. // Context Variables are available in the url rewriter, modify headers and body transforms. EnableContextVars bool `json:"enable_context_vars,omitempty"` // EnableDetailedRecording instructs Tyk store the inbound request and outbound response data in HTTP Wire format // as part of the Analytics data EnableDetailedRecording bool `json:"enable_detailed_recording,omitempty"` GraphQL *GraphQLConfig `json:"graphql,omitempty"` }
APIDefinition represents the configuration for a single proxied API and it's versions. +kubebuilder:object:generate=true
func (*APIDefinitionSpec) CollectLoopingTarget ¶ added in v0.6.0
func (a *APIDefinitionSpec) CollectLoopingTarget() (targets []Target)
func (*APIDefinitionSpec) DeepCopy ¶
func (in *APIDefinitionSpec) DeepCopy() *APIDefinitionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIDefinitionSpec.
func (*APIDefinitionSpec) DeepCopyInto ¶
func (in *APIDefinitionSpec) DeepCopyInto(out *APIDefinitionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type APILimit ¶
type APILimit struct { Rate int64 `json:"rate"` Per int64 `json:"per"` ThrottleInterval int64 `json:"throttle_interval"` ThrottleRetryLimit int `json:"throttle_retry_limit"` MaxQueryDepth int `json:"max_query_depth"` QuotaMax int64 `json:"quota_max"` QuotaRenews int64 `json:"quota_renews"` QuotaRemaining int64 `json:"quota_remaining"` QuotaRenewalRate int64 `json:"quota_renewal_rate"` }
APILimit stores quota and rate limit on ACL level (per API)
func (*APILimit) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APILimit.
func (*APILimit) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AccessDefinition ¶
type AccessDefinition struct { // Namespace of the ApiDefinition resource to target Namespace string `json:"namespace"` // Name of the ApiDefinition resource to target Name string `json:"name"` // TODO: APIName should not really be needed, as is auto-set from the APIDefnition Resource APIName string `json:"api_name,omitempty"` // TODO: APIID should not really be needed, as is auto-set from the APIDefnition Resource APIID string `json:"api_id,omitempty"` Versions []string `json:"versions"` //RestrictedTypes []graphql.Type `json:"restricted_types"` //Limit APILimit `json:"limit,omitempty"` AllowanceScope string `json:"allowance_scope,omitempty"` AllowedURLs []AccessSpec `json:"allowed_urls,omitempty"` // mapped string MUST be a valid regex }
from tyk/session.go AccessDefinition defines which versions of an API a key has access to
func (*AccessDefinition) DeepCopy ¶
func (in *AccessDefinition) DeepCopy() *AccessDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessDefinition.
func (*AccessDefinition) DeepCopyInto ¶
func (in *AccessDefinition) DeepCopyInto(out *AccessDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AccessSpec ¶
AccessSpecs define what URLS a user has access to an what methods are enabled
func (*AccessSpec) DeepCopy ¶
func (in *AccessSpec) DeepCopy() *AccessSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessSpec.
func (*AccessSpec) DeepCopyInto ¶
func (in *AccessSpec) DeepCopyInto(out *AccessSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AccessTypeEnum ¶ added in v0.6.0
type AccessTypeEnum string
+kubebuilder:validation:Enum=authorization_code;refresh_token;password;client_credentials
type ApiDefinition ¶
type ApiDefinition struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec APIDefinitionSpec `json:"spec,omitempty"` Status ApiDefinitionStatus `json:"status,omitempty"` }
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Domain",type=string,JSONPath=`.spec.domain` +kubebuilder:printcolumn:name="ListenPath",type=string,JSONPath=`.spec.proxy.listen_path` +kubebuilder:printcolumn:name="Proxy.TargetURL",type=string,JSONPath=`.spec.proxy.target_url` +kubebuilder:printcolumn:name="Enabled",type=boolean,JSONPath=`.spec.active` +kubebuilder:resource:shortName=tykapis ApiDefinition is the Schema for the apidefinitions API
func (*ApiDefinition) DeepCopy ¶
func (in *ApiDefinition) DeepCopy() *ApiDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiDefinition.
func (*ApiDefinition) DeepCopyInto ¶
func (in *ApiDefinition) DeepCopyInto(out *ApiDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ApiDefinition) DeepCopyObject ¶
func (in *ApiDefinition) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ApiDefinition) Default ¶
func (in *ApiDefinition) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*ApiDefinition) SetupWebhookWithManager ¶
func (in *ApiDefinition) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*ApiDefinition) ValidateCreate ¶
func (in *ApiDefinition) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*ApiDefinition) ValidateDelete ¶
func (in *ApiDefinition) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*ApiDefinition) ValidateUpdate ¶
func (in *ApiDefinition) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type ApiDefinitionList ¶
type ApiDefinitionList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ApiDefinition `json:"items"` }
ApiDefinitionList contains a list of ApiDefinition +kubebuilder:object:root=true
func (*ApiDefinitionList) DeepCopy ¶
func (in *ApiDefinitionList) DeepCopy() *ApiDefinitionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiDefinitionList.
func (*ApiDefinitionList) DeepCopyInto ¶
func (in *ApiDefinitionList) DeepCopyInto(out *ApiDefinitionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ApiDefinitionList) DeepCopyObject ¶
func (in *ApiDefinitionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ApiDefinitionStatus ¶
type ApiDefinitionStatus struct { ApiID string `json:"api_id"` // LinkedByPolicies is a list policies that references this api definition //+optional LinkedByPolicies []Target `json:"linked_by_policies,omitempty"` // LinkedByAPIs is a list of ApiDefinition namespaced/name that links to this // resource LinkedByAPIs []Target `json:"linked_by_apis,omitempty"` // LinkedToAPIs is a list of ApiDefinition namespaced/name that this resource // links to. LinkedToAPIs []Target `json:"linked_to_apis,omitempty"` }
ApiDefinitionStatus defines the observed state of ApiDefinition
func (*ApiDefinitionStatus) DeepCopy ¶
func (in *ApiDefinitionStatus) DeepCopy() *ApiDefinitionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiDefinitionStatus.
func (*ApiDefinitionStatus) DeepCopyInto ¶
func (in *ApiDefinitionStatus) DeepCopyInto(out *ApiDefinitionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthConfig ¶
type AuthConfig struct { UseParam bool `json:"use_param,omitempty"` ParamName string `json:"param_name,omitempty"` UseCookie bool `json:"use_cookie,omitempty"` CookieName string `json:"cookie_name,omitempty"` AuthHeaderName string `json:"auth_header_name"` UseCertificate bool `json:"use_certificate,omitempty"` ValidateSignature bool `json:"validate_signature,omitempty"` Signature SignatureConfig `json:"signature,omitempty"` }
func (*AuthConfig) DeepCopy ¶
func (in *AuthConfig) DeepCopy() *AuthConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthConfig.
func (*AuthConfig) DeepCopyInto ¶
func (in *AuthConfig) DeepCopyInto(out *AuthConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthProviderCode ¶
type AuthProviderCode string
ApiDefinitionSpec defines the desired state of ApiDefinition
type AuthProviderMeta ¶
type AuthProviderMeta struct { Name AuthProviderCode `json:"name"` StorageEngine StorageEngineCode `json:"storage_engine"` }
func (*AuthProviderMeta) DeepCopy ¶
func (in *AuthProviderMeta) DeepCopy() *AuthProviderMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthProviderMeta.
func (*AuthProviderMeta) DeepCopyInto ¶
func (in *AuthProviderMeta) DeepCopyInto(out *AuthProviderMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthTypeEnum ¶
type AuthTypeEnum string
type AuthorizeTypeEnum ¶ added in v0.6.0
type AuthorizeTypeEnum string
+kubebuilder:validation:Enum=code;token
type BasicAuthMeta ¶
type BasicAuthMeta struct { DisableCaching bool `json:"disable_caching"` CacheTTL int `json:"cache_ttl"` ExtractFromBody bool `json:"extract_from_body"` BodyUserRegexp string `json:"body_user_regexp"` BodyPasswordRegexp string `json:"body_password_regexp"` }
func (*BasicAuthMeta) DeepCopy ¶
func (in *BasicAuthMeta) DeepCopy() *BasicAuthMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BasicAuthMeta.
func (*BasicAuthMeta) DeepCopyInto ¶
func (in *BasicAuthMeta) DeepCopyInto(out *BasicAuthMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleManifest ¶
type BundleManifest struct { FileList []string `json:"file_list"` CustomMiddleware MiddlewareSection `json:"custom_middleware"` Checksum string `json:"checksum"` Signature string `json:"signature"` }
func (*BundleManifest) DeepCopy ¶
func (in *BundleManifest) DeepCopy() *BundleManifest
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleManifest.
func (*BundleManifest) DeepCopyInto ¶
func (in *BundleManifest) DeepCopyInto(out *BundleManifest)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CORS ¶
type CORS struct { // Enable when set to true it enables the cors middleware for the api Enable bool `json:"enable,omitempty"` // AllowedOrigins is a list of origin domains to allow access from. AllowedOrigins []string `json:"allowed_origins,omitempty"` // AllowedMethods is a list of methods to allow access via. AllowedMethods []HttpMethod `json:"allowed_methods,omitempty"` // AllowedHeaders are headers that are allowed within a request. AllowedHeaders []string `json:"allowed_headers,omitempty"` // ExposedHeaders is a list of headers that are exposed back in the response. ExposedHeaders []string `json:"exposed_headers,omitempty"` // AllowCredentials if true will allow cookies AllowCredentials bool `json:"allow_credentials,omitempty"` // MaxAge is the maximum age of credentials MaxAge int `json:"max_age,omitempty"` // OptionsPassthrough allow CORS OPTIONS preflight request to be proxied // directly to upstream, without authentication and rest of checks. This means // that pre-flight requests generated by web-clients such as SwaggerUI or the // Tyk Portal documentation system will be able to test the API using trial // keys. If your service handles CORS natively, then enable this option. OptionsPassthrough bool `json:"options_passthrough,omitempty"` // Debug if true, this option produces log files for the CORS middleware Debug bool `json:"debug,omitempty"` }
CORS cors settings
func (*CORS) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CORS.
func (*CORS) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CacheMeta ¶
type CacheMeta struct { Method HttpMethod `json:"method"` Path string `json:"path"` CacheKeyRegex string `json:"cache_key_regex"` CacheOnlyResponseCodes []int `json:"cache_response_codes"` }
func (*CacheMeta) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CacheMeta.
func (*CacheMeta) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CacheOptions ¶
type CacheOptions struct { // EnableCache turns global cache middleware on or off. // It is still possible to enable caching on a per-path basis by explicitly setting the endpoint cache middleware. // see `spec.version_data.versions.{VERSION}.extended_paths.cache[]` EnableCache bool `json:"enable_cache,omitempty"` // CacheTimeout is the TTL for a cached object in seconds CacheTimeout int64 `json:"cache_timeout"` // CacheAllSafeRequests caches responses to (GET, HEAD, OPTIONS) requests // overrides per-path cache settings in versions, applies across versions CacheAllSafeRequests bool `json:"cache_all_safe_requests,omitempty"` // CacheOnlyResponseCodes is an array of response codes which are safe to cache. e.g. 404 CacheOnlyResponseCodes []int `json:"cache_response_codes,omitempty"` // EnableUpstreamCacheControl instructs Tyk Cache to respect upstream cache control headers EnableUpstreamCacheControl bool `json:"enable_upstream_cache_control,omitempty"` // CacheControlTTLHeader is the response header which tells Tyk how long it is safe to cache the response for CacheControlTTLHeader string `json:"cache_control_ttl_header,omitempty"` // CacheByHeaders allows header values to be used as part of the cache key CacheByHeaders []string `json:"cache_by_headers,omitempty"` }
func (*CacheOptions) DeepCopy ¶
func (in *CacheOptions) DeepCopy() *CacheOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CacheOptions.
func (*CacheOptions) DeepCopyInto ¶
func (in *CacheOptions) DeepCopyInto(out *CacheOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CheckCommand ¶
func (*CheckCommand) DeepCopy ¶
func (in *CheckCommand) DeepCopy() *CheckCommand
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CheckCommand.
func (*CheckCommand) DeepCopyInto ¶
func (in *CheckCommand) DeepCopyInto(out *CheckCommand)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CircuitBreakerMeta ¶
type CircuitBreakerMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` // ThresholdPercent is the percentage of requests that fail before breaker is tripped ThresholdPercent Percent `json:"threshold_percent"` // Samples defines the number of requests to base the ThresholdPercent on Samples int64 `json:"samples"` // ReturnToServiceAfter represents the time in seconds to return back to the service ReturnToServiceAfter int `json:"return_to_service_after"` DisableHalfOpenState bool `json:"disable_half_open_state,omitempty"` }
func (*CircuitBreakerMeta) DeepCopy ¶
func (in *CircuitBreakerMeta) DeepCopy() *CircuitBreakerMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CircuitBreakerMeta.
func (*CircuitBreakerMeta) DeepCopyInto ¶
func (in *CircuitBreakerMeta) DeepCopyInto(out *CircuitBreakerMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Config ¶
type Config struct { ListenPort int32 `json:"listen_port"` // +kubebuilder:validation:MinLength=3 Secret string `json:"secret"` // +kubebuilder:validation:MinLength=3 NodeSecret string `json:"node_secret"` ControlAPIHostname string `json:"control_api_hostname"` ControlAPIPort int `json:"control_api_port"` //AllowInsecureConfigs bool `json:"allow_insecure_configs"` //PublicKeyPath string `json:"public_key_path"` //AllowRemoteConfig bool `bson:"allow_remote_config" json:"allow_remote_config"` //Security SecurityConfig `json:"security"` //HttpServerOptions HttpServerOptionsConfig `json:"http_server_options"` //ReloadWaitTime int `bson:"reload_wait_time" json:"reload_wait_time"` //VersionHeader string `json:"version_header"` //UseAsyncSessionWrite bool `json:"optimisations_use_async_session_write"` //SuppressRedisSignalReload bool `json:"suppress_redis_signal_reload"` //// Gateway Security Policies //HashKeys bool `json:"hash_keys"` //HashKeyFunction string `json:"hash_key_function"` //EnableHashedKeysListing bool `json:"enable_hashed_keys_listing"` //MinTokenLength int `json:"min_token_length"` //EnableAPISegregation bool `json:"enable_api_segregation"` //TemplatePath string `json:"template_path"` //Policies PoliciesConfig `json:"policies"` //DisablePortWhiteList bool `json:"disable_ports_whitelist"` //// Defines the ports that will be available for the api services to bind to. //// This is a map of protocol to PortWhiteList. This allows per protocol //// configurations. //PortWhiteList map[string]PortWhiteList `json:"ports_whitelist"` // //// CE Configurations //AppPath string `json:"app_path"` // //// Dashboard Configurations //UseDBAppConfigs bool `json:"use_db_app_configs"` //DBAppConfOptions DBAppConfOptionsConfig `json:"db_app_conf_options"` Storage StorageOptionsConf `json:"storage"` }
func (*Config) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Config.
func (*Config) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataSourceConfig ¶
type DataSourceConfig struct { URL string `json:"url"` Method HttpMethod `json:"method"` Body string `json:"body,omitempty"` DefaultTypeName string `json:"default_type_name,omitempty"` Headers []string `json:"headers,omitempty"` StatusCodeTypeNameMappings []StatusCodeTypeNameMapping `json:"status_code_type_name_mappings,omitempty"` }
func (*DataSourceConfig) DeepCopy ¶
func (in *DataSourceConfig) DeepCopy() *DataSourceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSourceConfig.
func (*DataSourceConfig) DeepCopyInto ¶
func (in *DataSourceConfig) DeepCopyInto(out *DataSourceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndPointMeta ¶
type EndPointMeta struct { Path string `json:"path"` IgnoreCase bool `json:"ignore_case"` MethodActions map[string]EndpointMethodMeta `json:"method_actions"` }
func (*EndPointMeta) DeepCopy ¶
func (in *EndPointMeta) DeepCopy() *EndPointMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndPointMeta.
func (*EndPointMeta) DeepCopyInto ¶
func (in *EndPointMeta) DeepCopyInto(out *EndPointMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndpointMethodAction ¶
type EndpointMethodAction string
type EndpointMethodMeta ¶
type EndpointMethodMeta struct { Action EndpointMethodAction `json:"action"` Code int `json:"code"` Data string `json:"data"` Headers map[string]string `json:"headers"` }
func (*EndpointMethodMeta) DeepCopy ¶
func (in *EndpointMethodMeta) DeepCopy() *EndpointMethodMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointMethodMeta.
func (*EndpointMethodMeta) DeepCopyInto ¶
func (in *EndpointMethodMeta) DeepCopyInto(out *EndpointMethodMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EventHandlerMetaConfig ¶
type EventHandlerMetaConfig struct {
Events map[TykEvent][]EventHandlerTriggerConfig `json:"events"`
}
func (*EventHandlerMetaConfig) DeepCopy ¶
func (in *EventHandlerMetaConfig) DeepCopy() *EventHandlerMetaConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHandlerMetaConfig.
func (*EventHandlerMetaConfig) DeepCopyInto ¶
func (in *EventHandlerMetaConfig) DeepCopyInto(out *EventHandlerMetaConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EventHandlerTriggerConfig ¶
type EventHandlerTriggerConfig struct {
Handler TykEventHandlerName `json:"handler_name"`
}
func (*EventHandlerTriggerConfig) DeepCopy ¶
func (in *EventHandlerTriggerConfig) DeepCopy() *EventHandlerTriggerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHandlerTriggerConfig.
func (*EventHandlerTriggerConfig) DeepCopyInto ¶
func (in *EventHandlerTriggerConfig) DeepCopyInto(out *EventHandlerTriggerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExtendedPathsSet ¶
type ExtendedPathsSet struct { Ignored []EndPointMeta `json:"ignored,omitempty"` WhiteList []EndPointMeta `json:"white_list,omitempty"` BlackList []EndPointMeta `json:"black_list,omitempty"` // List of paths which cache middleware should be enabled on Cached []string `json:"cache,omitempty"` Transform []TemplateMeta `json:"transform,omitempty"` TransformResponse []TemplateMeta `json:"transform_response,omitempty"` TransformJQ []TransformJQMeta `json:"transform_jq,omitempty"` TransformJQResponse []TransformJQMeta `json:"transform_jq_response,omitempty"` TransformHeader []HeaderInjectionMeta `json:"transform_headers,omitempty"` TransformResponseHeader []HeaderInjectionMeta `json:"transform_response_headers,omitempty"` AdvanceCacheConfig []CacheMeta `json:"advance_cache_config,omitempty"` HardTimeouts []HardTimeoutMeta `json:"hard_timeouts,omitempty"` CircuitBreaker []CircuitBreakerMeta `json:"circuit_breakers,omitempty"` URLRewrite []URLRewriteMeta `json:"url_rewrites,omitempty"` Virtual []VirtualMeta `json:"virtual,omitempty"` SizeLimit []RequestSizeMeta `json:"size_limits,omitempty"` MethodTransforms []MethodTransformMeta `json:"method_transforms,omitempty"` TrackEndpoints []TrackEndpointMeta `json:"track_endpoints,omitempty"` DoNotTrackEndpoints []TrackEndpointMeta `json:"do_not_track_endpoints,omitempty"` //ValidateJSON []ValidatePathMeta `json:"validate_json,omitempty"` // Breaking integration test? Internal []InternalMeta `json:"internal,omitempty"` }
func (*ExtendedPathsSet) DeepCopy ¶
func (in *ExtendedPathsSet) DeepCopy() *ExtendedPathsSet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedPathsSet.
func (*ExtendedPathsSet) DeepCopyInto ¶
func (in *ExtendedPathsSet) DeepCopyInto(out *ExtendedPathsSet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Float64 ¶
type Float64 string
Float64 is a work around to allow representing floating points as strings +kubebuilder:validation:Pattern="^(?:[-+]?(?:[0-9]+))?(?:\\.[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$"
source for pattern https://github.com/asaskevich/govalidator/blob/7a23bdc65eef5f3783e782b436f3065eae3fc72d/patterns.go#L19
func (Float64) MarshalJSON ¶
MarshalJSON marshalls f as a float64 number
func (*Float64) UnmarshalJSON ¶
UnmarshalJSON supports both float64 and a json.Number of float64
type Gateway ¶
type Gateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GatewaySpec `json:"spec,omitempty"` Status GatewayStatus `json:"status,omitempty"` }
Gateway is the Schema for the gateways API +kubebuilder:subresource:status
func (*Gateway) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Gateway.
func (*Gateway) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Gateway) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GatewayList ¶
type GatewayList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Gateway `json:"items"` }
GatewayList contains a list of Gateway
func (*GatewayList) DeepCopy ¶
func (in *GatewayList) DeepCopy() *GatewayList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayList.
func (*GatewayList) DeepCopyInto ¶
func (in *GatewayList) DeepCopyInto(out *GatewayList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GatewayList) DeepCopyObject ¶
func (in *GatewayList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GatewaySpec ¶
type GatewaySpec struct { // +kubebuilder:validation:Minimum=0 // Size is the size of the gateway deployment Size int32 `json:"size"` // +kubebuilder:validation:Enum=Deployment;DaemonSet // Kind is the type of deployment Kind string `json:"type"` // Version is the version of the gateway docker image Version string `json:"version"` Config Config `json:"config"` }
GatewaySpec defines the desired state of Gateway
func (*GatewaySpec) DeepCopy ¶
func (in *GatewaySpec) DeepCopy() *GatewaySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewaySpec.
func (*GatewaySpec) DeepCopyInto ¶
func (in *GatewaySpec) DeepCopyInto(out *GatewaySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayStatus ¶
type GatewayStatus struct { // The names of the Tyk Gateway pods Nodes []string `json:"nodes"` }
GatewayStatus defines the observed state of Gateway
func (*GatewayStatus) DeepCopy ¶
func (in *GatewayStatus) DeepCopy() *GatewayStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayStatus.
func (*GatewayStatus) DeepCopyInto ¶
func (in *GatewayStatus) DeepCopyInto(out *GatewayStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GlobalRateLimit ¶
func (*GlobalRateLimit) DeepCopy ¶
func (in *GlobalRateLimit) DeepCopy() *GlobalRateLimit
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalRateLimit.
func (*GlobalRateLimit) DeepCopyInto ¶
func (in *GlobalRateLimit) DeepCopyInto(out *GlobalRateLimit)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphQLConfig ¶
type GraphQLConfig struct { // Enabled indicates if GraphQL proxy should be enabled. Enabled bool `json:"enabled"` ExecutionMode GraphQLExecutionMode `json:"execution_mode"` // Schema is the GraphQL Schema exposed by the GraphQL API/Upstream/Engine. Schema string `json:"schema"` // TypeFieldConfigurations is a rule set of data source and mapping of a schema field. TypeFieldConfigurations []TypeFieldConfiguration `json:"type_field_configurations,omitempty"` // GraphQLPlayground is the Playground specific configuration. GraphQLPlayground GraphQLPlayground `json:"playground,omitempty"` }
GraphQLConfig is the root config object for a GraphQL API.
func (*GraphQLConfig) DeepCopy ¶
func (in *GraphQLConfig) DeepCopy() *GraphQLConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLConfig.
func (*GraphQLConfig) DeepCopyInto ¶
func (in *GraphQLConfig) DeepCopyInto(out *GraphQLConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphQLExecutionMode ¶
type GraphQLExecutionMode string
ExecutionMode is the mode to define how an api behaves. +kubebuilder:validation:Enum=proxyOnly;executionEngine
type GraphQLPlayground ¶
type GraphQLPlayground struct { // Enabled indicates if the playground should be enabled. Enabled bool `json:"enabled"` // Path sets the path on which the playground will be hosted if enabled. Path string `json:"path"` }
GraphQLPlayground represents the configuration for the public playground which will be hosted alongside the api.
func (*GraphQLPlayground) DeepCopy ¶
func (in *GraphQLPlayground) DeepCopy() *GraphQLPlayground
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLPlayground.
func (*GraphQLPlayground) DeepCopyInto ¶
func (in *GraphQLPlayground) DeepCopyInto(out *GraphQLPlayground)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HardTimeoutMeta ¶
type HardTimeoutMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` TimeOut int `json:"timeout"` }
func (*HardTimeoutMeta) DeepCopy ¶
func (in *HardTimeoutMeta) DeepCopy() *HardTimeoutMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardTimeoutMeta.
func (*HardTimeoutMeta) DeepCopyInto ¶
func (in *HardTimeoutMeta) DeepCopyInto(out *HardTimeoutMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeaderInjectionMeta ¶
type HeaderInjectionMeta struct { DeleteHeaders []string `json:"delete_headers"` AddHeaders map[string]string `json:"add_headers"` Path string `json:"path"` Method HttpMethod `json:"method"` ActOnResponse bool `json:"act_on"` }
func (*HeaderInjectionMeta) DeepCopy ¶
func (in *HeaderInjectionMeta) DeepCopy() *HeaderInjectionMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeaderInjectionMeta.
func (*HeaderInjectionMeta) DeepCopyInto ¶
func (in *HeaderInjectionMeta) DeepCopyInto(out *HeaderInjectionMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HostCheckObject ¶
type HostCheckObject struct { CheckURL string `json:"url"` Protocol string `json:"protocol"` Timeout time.Duration `json:"timeout"` EnableProxyProtocol bool `json:"enable_proxy_protocol"` Commands []CheckCommand `json:"commands"` Method HttpMethod `json:"method"` Headers map[string]string `json:"headers"` Body string `json:"body"` }
func (*HostCheckObject) DeepCopy ¶
func (in *HostCheckObject) DeepCopy() *HostCheckObject
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostCheckObject.
func (*HostCheckObject) DeepCopyInto ¶
func (in *HostCheckObject) DeepCopyInto(out *HostCheckObject)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HttpMethod ¶
type HttpMethod string
Method represents HTTP request method +kubebuilder:validation:Enum=GET;POST;PUT;PATCH;DELETE;OPTIONS;HEAD;CONNECT;TRACE
type IdExtractorConfig ¶
type IdExtractorConfig struct { HeaderName string `json:"header_name,omitempty"` FormParamName string `json:"param_name,omitempty"` RegexExpression string `json:"regex_expression,omitempty"` RegexMatchIndex int `json:"regex_match_index,omitempty"` }
func (*IdExtractorConfig) DeepCopy ¶
func (in *IdExtractorConfig) DeepCopy() *IdExtractorConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdExtractorConfig.
func (*IdExtractorConfig) DeepCopyInto ¶
func (in *IdExtractorConfig) DeepCopyInto(out *IdExtractorConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdExtractorSource ¶
type IdExtractorSource string
type IdExtractorType ¶
type IdExtractorType string
type InternalMeta ¶
type InternalMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` }
func (*InternalMeta) DeepCopy ¶
func (in *InternalMeta) DeepCopy() *InternalMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalMeta.
func (*InternalMeta) DeepCopyInto ¶
func (in *InternalMeta) DeepCopyInto(out *InternalMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MappingConfiguration ¶
func (*MappingConfiguration) DeepCopy ¶
func (in *MappingConfiguration) DeepCopy() *MappingConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MappingConfiguration.
func (*MappingConfiguration) DeepCopyInto ¶
func (in *MappingConfiguration) DeepCopyInto(out *MappingConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MethodTransformMeta ¶
type MethodTransformMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` ToMethod HttpMethod `json:"to_method"` }
func (*MethodTransformMeta) DeepCopy ¶
func (in *MethodTransformMeta) DeepCopy() *MethodTransformMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MethodTransformMeta.
func (*MethodTransformMeta) DeepCopyInto ¶
func (in *MethodTransformMeta) DeepCopyInto(out *MethodTransformMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MiddlewareDefinition ¶
type MiddlewareDefinition struct { Name string `json:"name"` Path string `json:"path"` RequireSession bool `json:"require_session,omitempty"` RawBodyOnly bool `json:"raw_body_only,omitempty"` }
func (*MiddlewareDefinition) DeepCopy ¶
func (in *MiddlewareDefinition) DeepCopy() *MiddlewareDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MiddlewareDefinition.
func (*MiddlewareDefinition) DeepCopyInto ¶
func (in *MiddlewareDefinition) DeepCopyInto(out *MiddlewareDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MiddlewareDriver ¶
type MiddlewareDriver string
type MiddlewareIdExtractor ¶
type MiddlewareIdExtractor struct { ExtractFrom IdExtractorSource `json:"extract_from"` ExtractWith IdExtractorType `json:"extract_with"` ExtractorConfig IdExtractorConfig `json:"extractor_config"` }
func (*MiddlewareIdExtractor) DeepCopy ¶
func (in *MiddlewareIdExtractor) DeepCopy() *MiddlewareIdExtractor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MiddlewareIdExtractor.
func (*MiddlewareIdExtractor) DeepCopyInto ¶
func (in *MiddlewareIdExtractor) DeepCopyInto(out *MiddlewareIdExtractor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MiddlewareSection ¶
type MiddlewareSection struct { Pre []MiddlewareDefinition `json:"pre,omitempty"` Post []MiddlewareDefinition `json:"post,omitempty"` PostKeyAuth []MiddlewareDefinition `json:"post_key_auth,omitempty"` AuthCheck MiddlewareDefinition `json:"auth_check,omitempty"` Response []MiddlewareDefinition `json:"response,omitempty"` Driver MiddlewareDriver `json:"driver"` IdExtractor MiddlewareIdExtractor `json:"id_extractor,omitempty"` }
func (*MiddlewareSection) DeepCopy ¶
func (in *MiddlewareSection) DeepCopy() *MiddlewareSection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MiddlewareSection.
func (*MiddlewareSection) DeepCopyInto ¶
func (in *MiddlewareSection) DeepCopyInto(out *MiddlewareSection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NotificationsManager ¶
type NotificationsManager struct { OAuthKeyChangeURL string `json:"oauth_on_keychange_url"` }
func (*NotificationsManager) DeepCopy ¶
func (in *NotificationsManager) DeepCopy() *NotificationsManager
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationsManager.
func (*NotificationsManager) DeepCopyInto ¶
func (in *NotificationsManager) DeepCopyInto(out *NotificationsManager)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OAuth2Meta ¶
type OAuth2Meta struct { // AllowedAccessTypes are an array of allowable access types. AllowedAccessTypes []AccessTypeEnum `json:"allowed_access_types"` // osin.AccessRequestType // AllowedAuthorizeTypes is an array of allowable `response_type` parameters `token` or authorization code `code`. // Choose token for client_credentials or implicit grant types. AllowedAuthorizeTypes []AuthorizeTypeEnum `json:"allowed_authorize_types"` // osin.AuthorizeRequestType // Login form to handle user login. AuthLoginRedirect string `json:"auth_login_redirect,omitempty"` }
+
func (*OAuth2Meta) DeepCopy ¶
func (in *OAuth2Meta) DeepCopy() *OAuth2Meta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OAuth2Meta.
func (*OAuth2Meta) DeepCopyInto ¶
func (in *OAuth2Meta) DeepCopyInto(out *OAuth2Meta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OIDProviderConfig ¶
type OIDProviderConfig struct { Issuer string `json:"issuer"` ClientIDs map[string]string `json:"client_ids"` }
func (*OIDProviderConfig) DeepCopy ¶
func (in *OIDProviderConfig) DeepCopy() *OIDProviderConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OIDProviderConfig.
func (*OIDProviderConfig) DeepCopyInto ¶
func (in *OIDProviderConfig) DeepCopyInto(out *OIDProviderConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenIDOptions ¶
type OpenIDOptions struct { Providers []OIDProviderConfig `json:"providers"` SegregateByClient bool `json:"segregate_by_client"` }
func (*OpenIDOptions) DeepCopy ¶
func (in *OpenIDOptions) DeepCopy() *OpenIDOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIDOptions.
func (*OpenIDOptions) DeepCopyInto ¶
func (in *OpenIDOptions) DeepCopyInto(out *OpenIDOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Organization ¶
type Organization struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OrganizationSpec `json:"spec,omitempty"` Status OrganizationStatus `json:"status,omitempty"` }
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=tykorgs Organization is the Schema for the organizations API
func (*Organization) DeepCopy ¶
func (in *Organization) DeepCopy() *Organization
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Organization.
func (*Organization) DeepCopyInto ¶
func (in *Organization) DeepCopyInto(out *Organization)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Organization) DeepCopyObject ¶
func (in *Organization) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OrganizationList ¶
type OrganizationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Organization `json:"items"` }
OrganizationList contains a list of Organization
func (*OrganizationList) DeepCopy ¶
func (in *OrganizationList) DeepCopy() *OrganizationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrganizationList.
func (*OrganizationList) DeepCopyInto ¶
func (in *OrganizationList) DeepCopyInto(out *OrganizationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OrganizationList) DeepCopyObject ¶
func (in *OrganizationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OrganizationSpec ¶
type OrganizationSpec struct { ID string `json:"id,omitempty"` OwnerName string `json:"owner_name"` OwnerSlug string `json:"owner_slug,omitempty"` CNAMEEnabled bool `json:"cname_enabled"` CNAME string `json:"cname"` }
OrganizationSpec defines the desired state of Organization
func (*OrganizationSpec) DeepCopy ¶
func (in *OrganizationSpec) DeepCopy() *OrganizationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrganizationSpec.
func (*OrganizationSpec) DeepCopyInto ¶
func (in *OrganizationSpec) DeepCopyInto(out *OrganizationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OrganizationStatus ¶
type OrganizationStatus struct { }
OrganizationStatus defines the observed state of Organization
func (*OrganizationStatus) DeepCopy ¶
func (in *OrganizationStatus) DeepCopy() *OrganizationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrganizationStatus.
func (*OrganizationStatus) DeepCopyInto ¶
func (in *OrganizationStatus) DeepCopyInto(out *OrganizationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Percent ¶
type Percent string
Percent describes a percentage value expressed as a float. This is a positive decimal value that is less than 1 +kubebuilder:validation:Pattern="^0\\.\\d+|1\\.0$"
func (Percent) MarshalJSON ¶
MarshalJSON returns a json string for p. This is a string for normal operations and a float64 when marshalling for dashboard or gateway
func (*Percent) UnmarshalJSON ¶
type PolicyPartitions ¶
type PolicyPartitions struct { Quota bool `json:"quota"` RateLimit bool `json:"rate_limit"` Complexity bool `json:"complexity"` Acl bool `json:"acl"` PerAPI bool `json:"per_api"` }
func (*PolicyPartitions) DeepCopy ¶
func (in *PolicyPartitions) DeepCopy() *PolicyPartitions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyPartitions.
func (*PolicyPartitions) DeepCopyInto ¶
func (in *PolicyPartitions) DeepCopyInto(out *PolicyPartitions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Proxy ¶
type Proxy struct { // If PreserveHostHeader is set to true then the host header in the outbound request is retained to be the // inbound hostname of the proxy. PreserveHostHeader bool `json:"preserve_host_header,omitempty"` // ListenPath represents the path to listen on. e.g. `/api` or `/` or `/httpbin`. // Any requests coming into the host, on the port that Tyk is configured to run on, that match this path will // have the rules defined in the API Definition applied. Versioning assumes that different versions of an API // will live on the same URL structure. If you are using URL-based versioning (e.g. /v1/function, /v2/function) // then it is recommended to set up a separate non-versioned definition for each version as they are essentially // separate APIs. ListenPath string `json:"listen_path,omitempty"` // TargetURL defines the target URL that the request should be proxied to. TargetURL string `json:"target_url,omitempty"` TargeInternal *TargetInternal `json:"target_internal,omitempty"` // DisableStripSlash disables the stripping of the slash suffix from a URL. // when `true` a request to http://foo.bar/baz/ will be retained. // when `false` a request to http://foo.bar/baz/ will be matched to http://foo.bar/baz DisableStripSlash bool `json:"disable_strip_slash,omitempty"` // StripListenPath removes the inbound listen path in the outgoing request. // e.g. http://acme.com/httpbin/get where `httpbin` is the listen path. The `httpbin` listen path which is used // to identify the API loaded in Tyk is removed, and the outbound request would be http://httpbin.org/get StripListenPath bool `json:"strip_listen_path,omitempty"` // EnableLoadBalancing enables Tyk's round-robin loadbalancer. Tyk will ignore the TargetURL field, and rely on // the hosts in the Targets list EnableLoadBalancing bool `json:"enable_load_balancing,omitempty"` // Targets defines a list of upstream host targets. Tyk will then round-robin load balance between these targets. // EnableLoadBalancing must be set to true in order to take advantage of this feature. Targets []string `json:"target_list,omitempty"` // CheckHostAgainstUptimeTests will check the hostname of the outbound request against the downtime list generated // by the uptime test host checker. If the host is found, then it is skipped or removed from the load balancer. // This is only valid if uptime tests for the api are enabled. CheckHostAgainstUptimeTests bool `json:"check_host_against_uptime_tests,omitempty"` // Transport section exposes advanced transport level configurations such as minimum TLS version. Transport ProxyTransport `json:"transport,omitempty"` // TODO: Untested. Is there a use-case for SD inside a K8s environment? ServiceDiscovery ServiceDiscoveryConfiguration `json:"service_discovery,omitempty"` }
Proxy outlines the API proxying functionality.
func (*Proxy) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Proxy.
func (*Proxy) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyTransport ¶
type ProxyTransport struct { // SSLInsecureSkipVerify controls whether it is possible to use self-signed certificates when connecting to the // upstream. This is applied to `TykMakeHttpRequest` & `TykMakeBatchRequest` in virtual endpoint middleware. SSLInsecureSkipVerify bool `json:"ssl_insecure_skip_verify,omitempty"` // SSLCipherSuites is an array of acceptable cipher suites. A list of allowed cipher suites can be found in the // Go Crypto TLS package constants documentation https://golang.org/pkg/crypto/tls/#pkg-constants SSLCipherSuites []string `json:"ssl_ciphers,omitempty"` // SSLMinVersion defines the minimum TLS version the gateway will use to establish a connection to the upstream. // 1.0: 769; 1.1: 770; 1.2: 771; 1.3: 772. // +kubebuilder:validation:Enum=769;770;771;772 SSLMinVersion uint16 `json:"ssl_min_version,omitempty"` // SSLForceCommonNameCheck forces hostname validation against the certificate Common Name SSLForceCommonNameCheck bool `json:"ssl_force_common_name_check,omitempty"` // ProxyURL specifies custom forward proxy & port. e.g. `http(s)://proxy.url:1234` ProxyURL string `json:"proxy_url,omitempty"` }
func (*ProxyTransport) DeepCopy ¶
func (in *ProxyTransport) DeepCopy() *ProxyTransport
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyTransport.
func (*ProxyTransport) DeepCopyInto ¶
func (in *ProxyTransport) DeepCopyInto(out *ProxyTransport)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RequestInputType ¶
type RequestInputType string
type RequestSigningMeta ¶
type RequestSigningMeta struct { IsEnabled bool `json:"is_enabled"` Secret string `json:"secret"` KeyId string `json:"key_id"` Algorithm string `json:"algorithm"` HeaderList []string `json:"header_list"` CertificateId string `json:"certificate_id"` SignatureHeader string `json:"signature_header"` }
func (*RequestSigningMeta) DeepCopy ¶
func (in *RequestSigningMeta) DeepCopy() *RequestSigningMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestSigningMeta.
func (*RequestSigningMeta) DeepCopyInto ¶
func (in *RequestSigningMeta) DeepCopyInto(out *RequestSigningMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RequestSizeMeta ¶
type RequestSizeMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` SizeLimit int64 `json:"size_limit"` }
func (*RequestSizeMeta) DeepCopy ¶
func (in *RequestSizeMeta) DeepCopy() *RequestSizeMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestSizeMeta.
func (*RequestSizeMeta) DeepCopyInto ¶
func (in *RequestSizeMeta) DeepCopyInto(out *RequestSizeMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResponseProcessor ¶
type ResponseProcessor struct {
Name string `json:"name"`
}
func (*ResponseProcessor) DeepCopy ¶
func (in *ResponseProcessor) DeepCopy() *ResponseProcessor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseProcessor.
func (*ResponseProcessor) DeepCopyInto ¶
func (in *ResponseProcessor) DeepCopyInto(out *ResponseProcessor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RewriteToInternal ¶ added in v0.6.0
type RewriteToInternal struct { // API a namespaced/name to the api definition resource that you are // targetting Target Target `json:"target,omitempty"` // Path path on target , this does not include query parameters. // example /myendpoint Path string `json:"path,omitempty"` // Query url query string to add to target // example check_limits=true Query string `json:"query,omitempty"` }
RewriteToInternal defines options that constructs a url that refers to an api that is loaded into the gateway.
func (*RewriteToInternal) DeepCopy ¶ added in v0.6.0
func (in *RewriteToInternal) DeepCopy() *RewriteToInternal
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RewriteToInternal.
func (*RewriteToInternal) DeepCopyInto ¶ added in v0.6.0
func (in *RewriteToInternal) DeepCopyInto(out *RewriteToInternal)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (RewriteToInternal) String ¶ added in v0.6.0
func (i RewriteToInternal) String() string
type RoutingTrigger ¶
type RoutingTrigger struct { On RoutingTriggerOnType `json:"on"` Options RoutingTriggerOptions `json:"options"` RewriteTo string `json:"rewrite_to,omitempty"` RewriteToInternal *RewriteToInternal `json:"rewrite_to_internal,omitempty"` }
func (*RoutingTrigger) DeepCopy ¶
func (in *RoutingTrigger) DeepCopy() *RoutingTrigger
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingTrigger.
func (*RoutingTrigger) DeepCopyInto ¶
func (in *RoutingTrigger) DeepCopyInto(out *RoutingTrigger)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RoutingTriggerOnType ¶
type RoutingTriggerOnType string
type RoutingTriggerOptions ¶
type RoutingTriggerOptions struct { HeaderMatches map[string]StringRegexMap `json:"header_matches,omitempty"` QueryValMatches map[string]StringRegexMap `json:"query_val_matches,omitempty"` PathPartMatches map[string]StringRegexMap `json:"path_part_matches,omitempty"` SessionMetaMatches map[string]StringRegexMap `json:"session_meta_matches,omitempty"` RequestContextMatches map[string]StringRegexMap `json:"request_context_matches,omitempty"` PayloadMatches *StringRegexMap `json:"payload_matches,omitempty"` }
func (*RoutingTriggerOptions) DeepCopy ¶
func (in *RoutingTriggerOptions) DeepCopy() *RoutingTriggerOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingTriggerOptions.
func (*RoutingTriggerOptions) DeepCopyInto ¶
func (in *RoutingTriggerOptions) DeepCopyInto(out *RoutingTriggerOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityPolicy ¶
type SecurityPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SecurityPolicySpec `json:"spec,omitempty"` Status SecurityPolicyStatus `json:"status,omitempty"` }
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=tykpolicies SecurityPolicy is the Schema for the securitypolicies API
func (*SecurityPolicy) DeepCopy ¶
func (in *SecurityPolicy) DeepCopy() *SecurityPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicy.
func (*SecurityPolicy) DeepCopyInto ¶
func (in *SecurityPolicy) DeepCopyInto(out *SecurityPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SecurityPolicy) DeepCopyObject ¶
func (in *SecurityPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*SecurityPolicy) Default ¶
func (r *SecurityPolicy) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*SecurityPolicy) SetupWebhookWithManager ¶
func (r *SecurityPolicy) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*SecurityPolicy) ValidateCreate ¶
func (r *SecurityPolicy) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*SecurityPolicy) ValidateDelete ¶
func (r *SecurityPolicy) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*SecurityPolicy) ValidateUpdate ¶
func (r *SecurityPolicy) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type SecurityPolicyList ¶
type SecurityPolicyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SecurityPolicy `json:"items"` }
SecurityPolicyList contains a list of SecurityPolicy +kubebuilder:object:root=true
func (*SecurityPolicyList) DeepCopy ¶
func (in *SecurityPolicyList) DeepCopy() *SecurityPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicyList.
func (*SecurityPolicyList) DeepCopyInto ¶
func (in *SecurityPolicyList) DeepCopyInto(out *SecurityPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SecurityPolicyList) DeepCopyObject ¶
func (in *SecurityPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SecurityPolicySpec ¶
type SecurityPolicySpec struct { // MID ("_id") is generated by Tyk once the resource is created. // Do NOT fill this in. MID string `json:"_id,omitempty"` // If you are linking an existing Policy ID to a new YAML CRD, then // fill in this ID field with the "_id" field. // See policies.md readme for more info ID string `json:"id,omitempty"` // Name represents the name of the security policy as displayed in the Dashboard Name string `json:"name"` // OrgID is overwritten - no point setting this OrgID string `json:"org_id,omitempty"` // +kubebuilder:validation:Enum=active;draft;deny // State can be active, draft or deny // active: All keys are active and new keys can be created. // draft: All keys are active but no new keys can be created. // deny: All keys are deactivated and no keys can be created. State string `json:"state"` // Active must be set to `true` for Tyk to load the security policy into memory. Active bool `json:"active"` // IsInactive applies to the key itself. Allows enabling or disabling the policy without deleting it. IsInactive bool `json:"is_inactive,omitempty"` AccessRightsArray []AccessDefinition `json:"access_rights_array"` AccessRights map[string]AccessDefinition `json:"access_rights,omitempty"` // Rate limit per X seconds (x="Per"), omit or "-1" for unlimited Rate int64 `json:"rate,omitempty"` // To be used in conjunction with "Rate". Per seconds. 1 minute=60. 1 hour=3600 // omit or "-1" for unlimited Per int64 `json:"per,omitempty"` // Value of Quota allowed, omit or "-1" for unlimited QuotaMax int64 `json:"quota_max,omitempty"` // Value reset length, in seconds, omit or "-1" for unlimited QuotaRenewalRate int64 `json:"quota_renewal_rate,omitempty"` // If rate limited, how many seconds to retry a request for. omit or "-1" for unlimited ThrottleInterval int64 `json:"throttle_interval,omitempty"` // Number of retries before returning error. omit or "-1" for unlimited ThrottleRetryLimit int `json:"throttle_retry_limit,omitempty"` // Max depth of a GraphQL query MaxQueryDepth int `json:"max_query_depth,omitempty"` HMACEnabled bool `json:"hmac_enabled,omitempty"` EnableHTTPSignatureValidation bool `json:"enable_http_signature_validation,omitempty"` // Custom tags to apply to the key, get transfered to the analytics Tags []string `json:"tags,omitempty"` // KeyExpiresIn is the number of seconds till key expiry. For 1 hour is 3600. Default never expire or 0 KeyExpiresIn int64 `json:"key_expires_in,omitempty"` Partitions PolicyPartitions `json:"partitions,omitempty"` //LastUpdated string `json:"last_updated"` MetaData map[string]string `json:"meta_data,omitempty"` }
SecurityPolicySpec defines the desired state of SecurityPolicy
func (*SecurityPolicySpec) DeepCopy ¶
func (in *SecurityPolicySpec) DeepCopy() *SecurityPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicySpec.
func (*SecurityPolicySpec) DeepCopyInto ¶
func (in *SecurityPolicySpec) DeepCopyInto(out *SecurityPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityPolicyStatus ¶
type SecurityPolicyStatus struct {
PolID string `json:"pol_id"`
}
SecurityPolicyStatus defines the observed state of SecurityPolicy
func (*SecurityPolicyStatus) DeepCopy ¶
func (in *SecurityPolicyStatus) DeepCopy() *SecurityPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicyStatus.
func (*SecurityPolicyStatus) DeepCopyInto ¶
func (in *SecurityPolicyStatus) DeepCopyInto(out *SecurityPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceDiscoveryConfiguration ¶
type ServiceDiscoveryConfiguration struct { UseDiscoveryService bool `json:"use_discovery_service"` QueryEndpoint string `json:"query_endpoint"` UseNestedQuery bool `json:"use_nested_query"` ParentDataPath string `json:"parent_data_path"` DataPath string `json:"data_path"` PortDataPath string `json:"port_data_path"` TargetPath string `json:"target_path"` UseTargetList bool `json:"use_target_list"` CacheTimeout int64 `json:"cache_timeout"` EndpointReturnsList bool `json:"endpoint_returns_list"` }
func (*ServiceDiscoveryConfiguration) DeepCopy ¶
func (in *ServiceDiscoveryConfiguration) DeepCopy() *ServiceDiscoveryConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDiscoveryConfiguration.
func (*ServiceDiscoveryConfiguration) DeepCopyInto ¶
func (in *ServiceDiscoveryConfiguration) DeepCopyInto(out *ServiceDiscoveryConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SessionProviderCode ¶
type SessionProviderCode string
type SessionProviderMeta ¶
type SessionProviderMeta struct { Name SessionProviderCode `json:"name"` StorageEngine StorageEngineCode `json:"storage_engine"` }
func (*SessionProviderMeta) DeepCopy ¶
func (in *SessionProviderMeta) DeepCopy() *SessionProviderMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SessionProviderMeta.
func (*SessionProviderMeta) DeepCopyInto ¶
func (in *SessionProviderMeta) DeepCopyInto(out *SessionProviderMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SignatureConfig ¶
type SignatureConfig struct { Algorithm string `json:"algorithm"` Header string `json:"header"` Secret string `json:"secret"` AllowedClockSkew int64 `json:"allowed_clock_skew"` ErrorCode int `json:"error_code"` ErrorMessage string `json:"error_message"` }
func (*SignatureConfig) DeepCopy ¶
func (in *SignatureConfig) DeepCopy() *SignatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SignatureConfig.
func (*SignatureConfig) DeepCopyInto ¶
func (in *SignatureConfig) DeepCopyInto(out *SignatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SourceConfig ¶
type SourceConfig struct { // Kind defines the unique identifier of the DataSource // Kind needs to match to the Planner "DataSourceName" name // +kubebuilder:validation:Enum=GraphQLDataSource;HTTPJSONDataSource Kind string `json:"kind"` // Config is the DataSource specific configuration object // Each Planner needs to make sure to parse their Config Object correctly Config DataSourceConfig `json:"data_source_config,omitempty"` }
func (*SourceConfig) DeepCopy ¶
func (in *SourceConfig) DeepCopy() *SourceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceConfig.
func (*SourceConfig) DeepCopyInto ¶
func (in *SourceConfig) DeepCopyInto(out *SourceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StatusCodeTypeNameMapping ¶
type StatusCodeTypeNameMapping struct { StatusCode int `json:"status_code"` TypeName string `json:"type_name,omitempty"` }
func (*StatusCodeTypeNameMapping) DeepCopy ¶
func (in *StatusCodeTypeNameMapping) DeepCopy() *StatusCodeTypeNameMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatusCodeTypeNameMapping.
func (*StatusCodeTypeNameMapping) DeepCopyInto ¶
func (in *StatusCodeTypeNameMapping) DeepCopyInto(out *StatusCodeTypeNameMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StorageEngineCode ¶
type StorageEngineCode string
type StorageOptionsConf ¶
type StorageOptionsConf struct { //Type string `json:"type"` Addrs []string `json:"addrs"` }
func (*StorageOptionsConf) DeepCopy ¶
func (in *StorageOptionsConf) DeepCopy() *StorageOptionsConf
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageOptionsConf.
func (*StorageOptionsConf) DeepCopyInto ¶
func (in *StorageOptionsConf) DeepCopyInto(out *StorageOptionsConf)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StringRegexMap ¶
type StringRegexMap struct { MatchPattern string `json:"match_rx"` Reverse bool `json:"reverse,omitempty"` }
func (*StringRegexMap) DeepCopy ¶
func (in *StringRegexMap) DeepCopy() *StringRegexMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringRegexMap.
func (*StringRegexMap) DeepCopyInto ¶
func (in *StringRegexMap) DeepCopyInto(out *StringRegexMap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Target ¶ added in v0.6.0
func (*Target) DeepCopy ¶ added in v0.6.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Target.
func (*Target) DeepCopyInto ¶ added in v0.6.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (Target) NS ¶ added in v0.6.0
func (t Target) NS() types.NamespacedName
type TargetInternal ¶ added in v0.6.0
type TargetInternal struct { // API a namespaced/name to the api definition resource that you are // targetting Target Target `json:"target,omitempty"` // Path path on target , this does not include query parameters. // example /myendpoint Path string `json:"path,omitempty"` // Query url query string to add to target // example check_limits=true Query string `json:"query,omitempty"` }
TargetInternal defines options that constructs a url that refers to an api that is loaded into the gateway.
func (*TargetInternal) DeepCopy ¶ added in v0.6.0
func (in *TargetInternal) DeepCopy() *TargetInternal
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetInternal.
func (*TargetInternal) DeepCopyInto ¶ added in v0.6.0
func (in *TargetInternal) DeepCopyInto(out *TargetInternal)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (TargetInternal) String ¶ added in v0.6.0
func (i TargetInternal) String() string
type TemplateData ¶
type TemplateData struct { Input RequestInputType `json:"input_type"` Mode TemplateMode `json:"template_mode"` EnableSession bool `json:"enable_session"` TemplateSource string `json:"template_source"` }
func (*TemplateData) DeepCopy ¶
func (in *TemplateData) DeepCopy() *TemplateData
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateData.
func (*TemplateData) DeepCopyInto ¶
func (in *TemplateData) DeepCopyInto(out *TemplateData)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TemplateMeta ¶
type TemplateMeta struct { TemplateData TemplateData `json:"template_data"` Path string `json:"path"` Method HttpMethod `json:"method"` }
func (*TemplateMeta) DeepCopy ¶
func (in *TemplateMeta) DeepCopy() *TemplateMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateMeta.
func (*TemplateMeta) DeepCopyInto ¶
func (in *TemplateMeta) DeepCopyInto(out *TemplateMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TemplateMode ¶
type TemplateMode string
type TrackEndpointMeta ¶
type TrackEndpointMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` }
func (*TrackEndpointMeta) DeepCopy ¶
func (in *TrackEndpointMeta) DeepCopy() *TrackEndpointMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrackEndpointMeta.
func (*TrackEndpointMeta) DeepCopyInto ¶
func (in *TrackEndpointMeta) DeepCopyInto(out *TrackEndpointMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TransformJQMeta ¶
type TransformJQMeta struct { Filter string `json:"filter"` Path string `json:"path"` Method HttpMethod `json:"method"` }
func (*TransformJQMeta) DeepCopy ¶
func (in *TransformJQMeta) DeepCopy() *TransformJQMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformJQMeta.
func (*TransformJQMeta) DeepCopyInto ¶
func (in *TransformJQMeta) DeepCopyInto(out *TransformJQMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TykEventHandlerName ¶
type TykEventHandlerName string
type TypeFieldConfiguration ¶
type TypeFieldConfiguration struct { TypeName string `json:"type_name"` FieldName string `json:"field_name"` Mapping *MappingConfiguration `json:"mapping"` DataSource SourceConfig `json:"data_source"` }
func (*TypeFieldConfiguration) DeepCopy ¶
func (in *TypeFieldConfiguration) DeepCopy() *TypeFieldConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TypeFieldConfiguration.
func (*TypeFieldConfiguration) DeepCopyInto ¶
func (in *TypeFieldConfiguration) DeepCopyInto(out *TypeFieldConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type URLRewriteMeta ¶
type URLRewriteMeta struct { // Path represents the endpoint listen path Path string `json:"path"` Method HttpMethod `json:"method"` // MatchPattern is a regular expression pattern to match the path MatchPattern string `json:"match_pattern"` // RewriteTo is the target path on the upstream, or target URL we wish to rewrite to RewriteTo string `json:"rewrite_to,omitempty"` // RewriteToInternal serves as rewrite_to but used when rewriting to target // internal api's // When rewrite_to and rewrite_to_internal are both provided then // rewrite_to will take rewrite_to_internal RewriteToInternal *RewriteToInternal `json:"rewrite_to_internal,omitempty"` Triggers []RoutingTrigger `json:"triggers,omitempty"` }
func (*URLRewriteMeta) DeepCopy ¶
func (in *URLRewriteMeta) DeepCopy() *URLRewriteMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLRewriteMeta.
func (*URLRewriteMeta) DeepCopyInto ¶
func (in *URLRewriteMeta) DeepCopyInto(out *URLRewriteMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UptimeTestConfig ¶
type UptimeTestConfig struct { ExpireUptimeAnalyticsAfter int64 `json:"expire_utime_after"` // must have an expireAt TTL index set (http://docs.mongodb.org/manual/tutorial/expire-data/) ServiceDiscovery ServiceDiscoveryConfiguration `json:"service_discovery"` RecheckWait int `json:"recheck_wait"` }
func (*UptimeTestConfig) DeepCopy ¶
func (in *UptimeTestConfig) DeepCopy() *UptimeTestConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UptimeTestConfig.
func (*UptimeTestConfig) DeepCopyInto ¶
func (in *UptimeTestConfig) DeepCopyInto(out *UptimeTestConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UptimeTests ¶
type UptimeTests struct { CheckList []HostCheckObject `json:"check_list"` Config UptimeTestConfig `json:"config"` }
func (*UptimeTests) DeepCopy ¶
func (in *UptimeTests) DeepCopy() *UptimeTests
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UptimeTests.
func (*UptimeTests) DeepCopyInto ¶
func (in *UptimeTests) DeepCopyInto(out *UptimeTests)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ValidatePathMeta ¶
type ValidatePathMeta struct { // Allows override of default 422 Unprocessible Entity response code for validation errors. ErrorResponseCode int `json:"error_response_code"` Path string `json:"path"` Method HttpMethod `json:"method"` SchemaB64 string `json:"schema_b64,omitempty"` }
func (*ValidatePathMeta) DeepCopy ¶
func (in *ValidatePathMeta) DeepCopy() *ValidatePathMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValidatePathMeta.
func (*ValidatePathMeta) DeepCopyInto ¶
func (in *ValidatePathMeta) DeepCopyInto(out *ValidatePathMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VersionData ¶
type VersionData struct { NotVersioned bool `json:"not_versioned"` DefaultVersion string `json:"default_version"` Versions map[string]VersionInfo `json:"versions,omitempty"` }
func (*VersionData) DeepCopy ¶
func (in *VersionData) DeepCopy() *VersionData
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionData.
func (*VersionData) DeepCopyInto ¶
func (in *VersionData) DeepCopyInto(out *VersionData)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VersionDefinition ¶
type VersionDefinition struct { Location string `json:"location"` Key string `json:"key"` StripPath bool `json:"strip_path"` }
func (*VersionDefinition) DeepCopy ¶
func (in *VersionDefinition) DeepCopy() *VersionDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionDefinition.
func (*VersionDefinition) DeepCopyInto ¶
func (in *VersionDefinition) DeepCopyInto(out *VersionDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VersionInfo ¶
type VersionInfo struct { Name string `json:"name"` Expires string `json:"expires,omitempty"` Paths *VersionInfoPaths `json:"paths,omitempty"` UseExtendedPaths bool `json:"use_extended_paths,omitempty"` ExtendedPaths *ExtendedPathsSet `json:"extended_paths,omitempty"` GlobalHeaders map[string]string `json:"global_headers,omitempty"` GlobalHeadersRemove []string `json:"global_headers_remove,omitempty"` GlobalResponseHeaders map[string]string `json:"global_response_headers,omitempty"` GlobalResponseHeadersRemove []string `json:"global_response_headers_remove,omitempty"` IgnoreEndpointCase bool `json:"ignore_endpoint_case,omitempty"` GlobalSizeLimit int64 `json:"global_size_limit,omitempty"` OverrideTarget string `json:"override_target,omitempty"` }
func (*VersionInfo) DeepCopy ¶
func (in *VersionInfo) DeepCopy() *VersionInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionInfo.
func (*VersionInfo) DeepCopyInto ¶
func (in *VersionInfo) DeepCopyInto(out *VersionInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VersionInfoPaths ¶
type VersionInfoPaths struct { Ignored []string `json:"ignored,omitempty"` WhiteList []string `json:"white_list,omitempty"` BlackList []string `json:"black_list,omitempty"` }
func (*VersionInfoPaths) DeepCopy ¶
func (in *VersionInfoPaths) DeepCopy() *VersionInfoPaths
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionInfoPaths.
func (*VersionInfoPaths) DeepCopyInto ¶
func (in *VersionInfoPaths) DeepCopyInto(out *VersionInfoPaths)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VirtualMeta ¶
type VirtualMeta struct { ResponseFunctionName string `json:"response_function_name"` FunctionSourceType string `json:"function_source_type"` FunctionSourceURI string `json:"function_source_uri"` Path string `json:"path"` Method HttpMethod `json:"method"` UseSession bool `json:"use_session"` ProxyOnError bool `json:"proxy_on_error"` }
func (*VirtualMeta) DeepCopy ¶
func (in *VirtualMeta) DeepCopy() *VirtualMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMeta.
func (*VirtualMeta) DeepCopyInto ¶
func (in *VirtualMeta) DeepCopyInto(out *VirtualMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Webhook ¶
type Webhook struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec WebhookSpec `json:"spec,omitempty"` Status WebhookStatus `json:"status,omitempty"` }
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=tykhooks Webhook is the Schema for the webhooks API
func (*Webhook) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Webhook.
func (*Webhook) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Webhook) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WebhookList ¶
type WebhookList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Webhook `json:"items"` }
WebhookList contains a list of Webhook
func (*WebhookList) DeepCopy ¶
func (in *WebhookList) DeepCopy() *WebhookList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookList.
func (*WebhookList) DeepCopyInto ¶
func (in *WebhookList) DeepCopyInto(out *WebhookList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WebhookList) DeepCopyObject ¶
func (in *WebhookList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WebhookMethod ¶
type WebhookMethod string
WebhookMethod supported webhook methods used in webhook +kubebuilder:validation:Enum=GET;POST;PUT;PATCH;DELETE
type WebhookSpec ¶
type WebhookSpec struct { //ApiModel `bson:"api_model,omitempty" json:"api_model,omitempty"` // System generated resource. represents the ID to use in API calls ID string `json:"id,omitempty"` // The org ID to which this webhook belongs to OrgID string `bson:"org_id" json:"org_id,omitempty"` // System generated resource, will be set to the {namespace/name} of the CRD Name string `bson:"name" json:"name,omitempty"` Method WebhookMethod `bson:"method" json:"method"` TargetPath string `bson:"target_path" json:"target_path"` TemplatePath string `bson:"template_path" json:"template_path,omitempty"` HeaderList map[string]string `bson:"header_map" json:"header_map,omitempty"` EventTimeout int64 `bson:"event_timeout" json:"event_timeout,omitempty"` }
WebhookSpec defines the desired state of Webhook
func (*WebhookSpec) DeepCopy ¶
func (in *WebhookSpec) DeepCopy() *WebhookSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookSpec.
func (*WebhookSpec) DeepCopyInto ¶
func (in *WebhookSpec) DeepCopyInto(out *WebhookSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebhookStatus ¶
type WebhookStatus struct {
WebhookID string `json:"webhook_id"`
}
WebhookStatus defines the observed state of Webhook
func (*WebhookStatus) DeepCopy ¶
func (in *WebhookStatus) DeepCopy() *WebhookStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookStatus.
func (*WebhookStatus) DeepCopyInto ¶
func (in *WebhookStatus) DeepCopyInto(out *WebhookStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.