Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GenericError ¶
type GenericError struct {
// code
Code int64 `json:"code,omitempty"`
// details
Details []interface{} `json:"details"`
// message
Message string `json:"message,omitempty"`
// reason
Reason string `json:"reason,omitempty"`
// request
Request string `json:"request,omitempty"`
// status
Status string `json:"status,omitempty"`
}
GenericError The standard error format
swagger:model genericError
func (*GenericError) ContextValidate ¶ added in v0.40.0
ContextValidate validates this generic error based on context it is used
func (*GenericError) MarshalBinary ¶
func (m *GenericError) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*GenericError) UnmarshalBinary ¶
func (m *GenericError) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation
type HealthNotReadyStatus ¶
type HealthNotReadyStatus struct {
// Errors contains a list of errors that caused the not ready status.
Errors map[string]string `json:"errors,omitempty"`
}
HealthNotReadyStatus The not ready status of the service.
swagger:model healthNotReadyStatus
func (*HealthNotReadyStatus) ContextValidate ¶ added in v0.40.0
ContextValidate validates this health not ready status based on context it is used
func (*HealthNotReadyStatus) MarshalBinary ¶
func (m *HealthNotReadyStatus) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*HealthNotReadyStatus) UnmarshalBinary ¶
func (m *HealthNotReadyStatus) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation
type HealthStatus ¶
type HealthStatus struct {
// Status always contains "ok".
Status string `json:"status,omitempty"`
}
HealthStatus The health status of the service.
swagger:model healthStatus
func (*HealthStatus) ContextValidate ¶ added in v0.40.0
ContextValidate validates this health status based on context it is used
func (*HealthStatus) MarshalBinary ¶
func (m *HealthStatus) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*HealthStatus) UnmarshalBinary ¶
func (m *HealthStatus) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation
type JSONWebKey ¶
type JSONWebKey struct {
// The "alg" (algorithm) parameter identifies the algorithm intended for
// use with the key. The values used should either be registered in the
// IANA "JSON Web Signature and Encryption Algorithms" registry
// established by [JWA] or be a value that contains a Collision-
// Resistant Name.
Alg string `json:"alg,omitempty"`
// crv
Crv string `json:"crv,omitempty"`
// d
D string `json:"d,omitempty"`
// dp
Dp string `json:"dp,omitempty"`
// dq
Dq string `json:"dq,omitempty"`
// e
E string `json:"e,omitempty"`
// k
K string `json:"k,omitempty"`
// The "kid" (key ID) parameter is used to match a specific key. This
// is used, for instance, to choose among a set of keys within a JWK Set
// during key rollover. The structure of the "kid" value is
// unspecified. When "kid" values are used within a JWK Set, different
// keys within the JWK Set SHOULD use distinct "kid" values. (One
// example in which different keys might use the same "kid" value is if
// they have different "kty" (key type) values but are considered to be
// equivalent alternatives by the application using them.) The "kid"
// value is a case-sensitive string.
Kid string `json:"kid,omitempty"`
// The "kty" (key type) parameter identifies the cryptographic algorithm
// family used with the key, such as "RSA" or "EC". "kty" values should
// either be registered in the IANA "JSON Web Key Types" registry
// established by [JWA] or be a value that contains a Collision-
// Resistant Name. The "kty" value is a case-sensitive string.
Kty string `json:"kty,omitempty"`
// n
N string `json:"n,omitempty"`
// p
P string `json:"p,omitempty"`
// q
Q string `json:"q,omitempty"`
// qi
Qi string `json:"qi,omitempty"`
// The "use" (public key use) parameter identifies the intended use of
// the public key. The "use" parameter is employed to indicate whether
// a public key is used for encrypting data or verifying the signature
// on data. Values are commonly "sig" (signature) or "enc" (encryption).
Use string `json:"use,omitempty"`
// x
X string `json:"x,omitempty"`
// The "x5c" (X.509 certificate chain) parameter contains a chain of one
// or more PKIX certificates [RFC5280]. The certificate chain is
// represented as a JSON array of certificate value strings. Each
// string in the array is a base64-encoded (Section 4 of [RFC4648] --
// not base64url-encoded) DER [ITU.X690.1994] PKIX certificate value.
// The PKIX certificate containing the key value MUST be the first
// certificate.
X5c []string `json:"x5c"`
// y
Y string `json:"y,omitempty"`
}
JSONWebKey json web key
swagger:model jsonWebKey
func (*JSONWebKey) ContextValidate ¶ added in v0.40.0
ContextValidate validates this json web key based on context it is used
func (*JSONWebKey) MarshalBinary ¶
func (m *JSONWebKey) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*JSONWebKey) UnmarshalBinary ¶
func (m *JSONWebKey) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation
type JSONWebKeySet ¶
type JSONWebKeySet struct {
// The value of the "keys" parameter is an array of JWK values. By
// default, the order of the JWK values within the array does not imply
// an order of preference among them, although applications of JWK Sets
// can choose to assign a meaning to the order for their purposes, if
// desired.
Keys []*JSONWebKey `json:"keys"`
}
JSONWebKeySet json web key set
swagger:model jsonWebKeySet
func (*JSONWebKeySet) ContextValidate ¶ added in v0.40.0
ContextValidate validate this json web key set based on the context it is used
func (*JSONWebKeySet) MarshalBinary ¶
func (m *JSONWebKeySet) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*JSONWebKeySet) UnmarshalBinary ¶
func (m *JSONWebKeySet) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation
type Rule ¶
type Rule struct {
// Authenticators is a list of authentication handlers that will try and authenticate the provided credentials.
// Authenticators are checked iteratively from index 0 to n and if the first authenticator to return a positive
// result will be the one used.
//
// If you want the rule to first check a specific authenticator before "falling back" to others, have that authenticator
// as the first item in the array.
Authenticators []*RuleHandler `json:"authenticators"`
// authorizer
Authorizer *RuleHandler `json:"authorizer,omitempty"`
// Description is a human readable description of this rule.
Description string `json:"description,omitempty"`
// ID is the unique id of the rule. It can be at most 190 characters long, but the layout of the ID is up to you.
// You will need this ID later on to update or delete the rule.
ID string `json:"id,omitempty"`
// match
Match *RuleMatch `json:"match,omitempty"`
// Mutators is a list of mutation handlers that transform the HTTP request. A common use case is generating a new set
// of credentials (e.g. JWT) which then will be forwarded to the upstream server.
//
// Mutations are performed iteratively from index 0 to n and should all succeed in order for the HTTP request to be forwarded.
Mutators []*RuleHandler `json:"mutators"`
// upstream
Upstream *Upstream `json:"upstream,omitempty"`
}
Rule swaggerRule is a single rule that will get checked on every HTTP request.
swagger:model rule
func (*Rule) ContextValidate ¶ added in v0.40.0
ContextValidate validate this rule based on the context it is used
func (*Rule) MarshalBinary ¶
MarshalBinary interface implementation
func (*Rule) UnmarshalBinary ¶
UnmarshalBinary interface implementation
type RuleHandler ¶
type RuleHandler struct {
// Config contains the configuration for the handler. Please read the user
// guide for a complete list of each handler's available settings.
Config interface{} `json:"config,omitempty"`
// Handler identifies the implementation which will be used to handle this specific request. Please read the user
// guide for a complete list of available handlers.
Handler string `json:"handler,omitempty"`
}
RuleHandler rule handler
swagger:model ruleHandler
func (*RuleHandler) ContextValidate ¶ added in v0.40.0
ContextValidate validates this rule handler based on context it is used
func (*RuleHandler) MarshalBinary ¶
func (m *RuleHandler) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*RuleHandler) UnmarshalBinary ¶
func (m *RuleHandler) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation
type RuleMatch ¶
type RuleMatch struct {
// An array of HTTP methods (e.g. GET, POST, PUT, DELETE, ...). When ORY Oathkeeper searches for rules
// to decide what to do with an incoming request to the proxy server, it compares the HTTP method of the incoming
// request with the HTTP methods of each rules. If a match is found, the rule is considered a partial match.
// If the matchesUrl field is satisfied as well, the rule is considered a full match.
Methods []string `json:"methods"`
// This field represents the URL pattern this rule matches. When ORY Oathkeeper searches for rules
// to decide what to do with an incoming request to the proxy server, it compares the full request URL
// (e.g. https://mydomain.com/api/resource) without query parameters of the incoming
// request with this field. If a match is found, the rule is considered a partial match.
// If the matchesMethods field is satisfied as well, the rule is considered a full match.
//
// You can use regular expressions in this field to match more than one url. Regular expressions are encapsulated in
// brackets < and >. The following example matches all paths of the domain `mydomain.com`: `https://mydomain.com/<.*>`.
URL string `json:"url,omitempty"`
}
RuleMatch rule match
swagger:model ruleMatch
func (*RuleMatch) ContextValidate ¶ added in v0.40.0
ContextValidate validates this rule match based on context it is used
func (*RuleMatch) MarshalBinary ¶
MarshalBinary interface implementation
func (*RuleMatch) UnmarshalBinary ¶
UnmarshalBinary interface implementation
type UUID ¶
UUID UUID
swagger:model UUID
func (UUID) ContextValidate ¶ added in v0.40.0
ContextValidate validates this UUID based on context it is used
type UnexpectedError ¶ added in v0.40.4
type UnexpectedError string
UnexpectedError unexpected error
swagger:model unexpectedError
func (UnexpectedError) ContextValidate ¶ added in v0.40.4
ContextValidate validates this unexpected error based on context it is used
type Upstream ¶
type Upstream struct {
// PreserveHost, if false (the default), tells ORY Oathkeeper to set the upstream request's Host header to the
// hostname of the API's upstream's URL. Setting this flag to true instructs ORY Oathkeeper not to do so.
PreserveHost bool `json:"preserve_host,omitempty"`
// StripPath if set, replaces the provided path prefix when forwarding the requested URL to the upstream URL.
StripPath string `json:"strip_path,omitempty"`
// URL is the URL the request will be proxied to.
URL string `json:"url,omitempty"`
}
Upstream upstream
swagger:model Upstream
func (*Upstream) ContextValidate ¶ added in v0.40.0
ContextValidate validates this upstream based on context it is used
func (*Upstream) MarshalBinary ¶
MarshalBinary interface implementation
func (*Upstream) UnmarshalBinary ¶
UnmarshalBinary interface implementation
type Version ¶
type Version struct {
// Version is the service's version.
Version string `json:"version,omitempty"`
}
Version version
swagger:model version
func (*Version) ContextValidate ¶ added in v0.40.0
ContextValidate validates this version based on context it is used
func (*Version) MarshalBinary ¶
MarshalBinary interface implementation
func (*Version) UnmarshalBinary ¶
UnmarshalBinary interface implementation