package
0.0.0-20220709153646-cd005297bbf2
Repository: https://github.com/erikbos/gatekeeper.git
Documentation: pkg.go.dev

# Functions

HTTPStatusCode returns HTTP status code for Error type.
IDOf returns the id of an object (e.g.
NameOf returns the name of an object.
NewAttribute creates a new attribute.
NewBadRequestError returns a bad request error.
NewDatabaseError returns a database error.
NewForbiddenError returns a forbidden action error.
NewItemNotFoundError returns a item not found error.
NewNotAcceptable returns a not acceptable error.
NewUnauthorizedError returns an unauthorized error.
NewUpdateFailureError returns a item not found error.

# Constants

Cluster to send access logs to.
In memory buffer size for access logs.
File for storing access logs.
Field configuration for access logging to file.
Basic authentication header to set before forwarding upstream.
Name of upstream cluster to forward requests to.
Timeout for new network connections to cluster.
Whether the resource allows credentials.
Value of Access-Control-Allow-Headers header.
Value of Access-Control-Allow-Methods header.
Value of Access-Control-Expose-Headers header.
Value of Access-Control-Expose-Headers header.
Responsebody to return when direct response is done.
Return an arbitrary HTTP response directly, without proxying.
IP network address family to use for contacting cluster.
Refresh rate for resolving cluster hostname.
Resolver ip address(es) to use for dns resolution (multiple can be comma separated).
Name of extzauth cluster.
Are requests allowed in case authentication times out.
Number of bytes of POST request to include in authentication request.
Extauthz cluster request timeout.
Threshold of attempts before declaring cluster healthly.
Health check interval for probes.
Logfile name for healthcheck probes.
Determines http path of health check probe.
Sets network protocol to use for health check.
Health check timeout.
Threshold of attempts before declaring cluster unhealthly.
Determines host header to use for health check.
Hostname of cluster.
Host header to set when forwarding to upstream cluster.
AttributeTLSCipherSuites sets HTTP protocol to accept.
Tdle timeout for connections, for the period in which there are no active requests.
HTTP/2 initial connection window size.
HTTP/2 initial window size.
Cluster specific attributes.
listener specific attributes.
HTTP/2 max concurrent streams per connection.
Maximum number of connects to cluster.
Maximum number of pending cluster requests.
Maximum number of parallel requests to cluster.
Maximum number of retries to cluster.
Max number of retry attempts.
Organization to be used for lookups by envoyauth when authentication requests.
Upstream timeout per retry attempt.
Port of cluster.
Rewrites path when contacting upstream.
Ratelimiting.
.
.
.
Hostname when generating a redirect.
Path when generating a redirect.
Port when generating a redirect.
HTTP scheme when generating a redirect.
Return an HTTP redirect.
Enable removal of query parameters when redirecting.
Optional header(s) to remove before forwarding upstream.
Additional header 1 to set before forwarding upstream.
Additional header 2 to set before forwarding upstream.
Additional header 3 to set before forwarding upstream.
Additional header 4 to set before forwarding upstream.
Additional header 5 to set before forwarding upstream.
Cluster to mirror requests to.
Percentage of traffic traffic to mirror requests to.
Conditions under which retry takes place.
Upstream status codes which are to be retried.
Enable/disable authentication via extauthz.
// Enable ratelimiting.
Server name to respond with.
Holds hostname to send during TLS handshake (if not set a cluster's hostname will be used).
Tineout for cluster communication.
Determines whether to enable TLS or not, HTTP/2 always uses TLS.
AttributeTLSCertificate holds pem encoded certicate.
AttributeTLSCertificateFile holds filename of pem encoded certicate.
AttributeTLSCertificateKey holds certicate key.
AttributeTLSCertificateKeyFile holds filename of certicate key.
AttributeTLSCipherSuites determines set of allowed TLS ciphers.
AttributeTLSMaximumVersion determines maximum TLS version accepted.
AttributeTLSMinimumVersion determines minimum TLS version accepted.
dns resolving via both v4 & v6.
dns resolving using v4 only.
dns resolving using v6 only.
Attributes which are shared amongst listener, route and cluster.
Attributes which are shared amongst listener, route and cluster.
Attributes which are shared amongst listener, route and cluster.
Attributes which are shared amongst listener, route and cluster.
Attributes which are shared amongst listener, route and cluster.
Cluster specific attributes.
Cluster specific attributes.
Cluster specific attributes.
Cluster specific attributes.
Cluster specific attributes.
RouteType path will check for an exact match.
RouteType prefix will match path starting with prefix.
RouteType regexp will path regexp match.
Attributes which are shared amongst listener, route and cluster.
Attributes which are shared amongst listener, route and cluster.
Attributes which are shared amongst listener, route and cluster.
Attributes which are shared amongst listener, route and cluster.
Attributes which are shared amongst listener, route and cluster.
Weighted list of clusters to load balance requests across.
Default connection timeout.
Default cluster connect idle timeout.
Default dns resolution interval of cluster hostname.
Default healthy threshold.
Default health check interval.
Default health check timeout.
Default unhealthy threshold.
Default retry count.
Default per retry timeout.
Default retry-on status codes.
Default route timeout.
Entity types we handle.
Entity types we handle.
Entity types we handle.
Entity types we handle.
Entity types we handle.
Entity types we handle.
Entity types we handle.
Entity types we handle.
Entity types we handle.
Entity types we handle.
Entity types we handle.
Entity types we handle.

# Variables

Maximum number of attributes allowed in set.
NullAPIProduct is an empty apiproduct type.
NullAPIProducts is an empty apiproduct slice.
NullAttribute is an empty attribute type.
NullAttributes is an empty attributes slice.
NullAudit is an empty audit type.
NullAudits is an empty audit slice.
NullCluster is an empty cluster type.
NullClusters is an empty cluster slice.
NullCompanies is an empty company slice.
NullCompany is an empty company type.
NullDeveloper is an empty developer type.
NullDeveloperApp is an empty developer app type.
NullDeveloperAppKey is an empty key type.
NullDeveloperAppKeys is an empty key slice.
NullDeveloperApps is an empty developer app slice.
NullDevelopers is an empty developer slice.
NullListener is an empty listener type.
NullListeners is an empty listener slice.
NullOrganization is an empty organization type.
NullOrganizations is an empty organization slice.
NullPermission is an allow type.
NullPermissions is an allows type.
NullRole is an empty role type.
NullRoles is an empty role slice.
NullRoute is an empty route type.
NullRoutes is an empty route slice.
NullUser is an empty user type.
NullUsers is an empty user slice.

# Structs

APIProduct type contains everything about an API product Field validation (binding) is done using https://godoc.org/github.com/go-playground/validator.
Attribute is an array with attributes Field validation settings (binding) are validated with https://godoc.org/github.com/go-playground/validator.
Audit holds an audit.
Cluster holds configuration of an upstream cluster Field validation (binding) is done using https://godoc.org/github.com/go-playground/validator.
Company holds details of a company.
Developer contains everything about a Developer.
DeveloperApp contains everything about a Developer Application.
Key contains an apikey entitlement Field validation (binding) is done using https://godoc.org/github.com/go-playground/validator.
KeyAPIProductStatus contains whether an apikey's assigned apiproduct has been approved.
Listener contains everything about downstream configuration of listener and http virtual hosts.
OAuthAccessToken holds details of an issued OAuth token.
Organization holds details of an organization.
Permission holds the criteria a role will allow request.
Role holds an role.
Route holds configuration of a route Field validation (binding) is done using https://godoc.org/github.com/go-playground/validator.
User holds an user.

# Interfaces

Error is our error type providing additional (internal error detail.

# Type aliases

APIProduct type contains everything about an API product Field validation (binding) is done using https://godoc.org/github.com/go-playground/validator.
Attribute is an array with attributes Field validation settings (binding) are validated with https://godoc.org/github.com/go-playground/validator.
Audit holds an audit.
Cluster holds configuration of an upstream cluster Field validation (binding) is done using https://godoc.org/github.com/go-playground/validator.
Company holds details of a company.
DeveloperApp contains everything about a Developer Application.
Developer contains everything about a Developer.
KeyAPIProductStatuses contains list of apiproducts.
Key contains an apikey entitlement Field validation (binding) is done using https://godoc.org/github.com/go-playground/validator.
Listener contains everything about downstream configuration of listener and http virtual hosts.
Organization holds details of an organization.
Permissions holds one or more allow.
Role holds an role.
Route holds configuration of a route Field validation (binding) is done using https://godoc.org/github.com/go-playground/validator.
User holds an user.