v2alpha

package
v0.0.0-...-113c6ea Latest Latest
Warning

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

Go to latest
Published: Nov 27, 2019 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Overview

Package v2alpha is a generated protocol buffer package.

It is generated from these files:

envoy/service/auth/v2alpha/attribute_context.proto
envoy/service/auth/v2alpha/external_auth.proto

It has these top-level messages:

AttributeContext
CheckRequest
DeniedHttpResponse
OkHttpResponse
CheckResponse

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidLengthAttributeContext = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowAttributeContext   = fmt.Errorf("proto: integer overflow")
)
View Source
var (
	ErrInvalidLengthExternalAuth = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowExternalAuth   = fmt.Errorf("proto: integer overflow")
)

Functions

func RegisterAuthorizationServer

func RegisterAuthorizationServer(s *grpc.Server, srv AuthorizationServer)

Types

type AttributeContext

type AttributeContext struct {
	// The source of a network activity, such as starting a TCP connection.
	// In a multi hop network activity, the source represents the sender of the
	// last hop.
	Source *AttributeContext_Peer `protobuf:"bytes,1,opt,name=source" json:"source,omitempty"`
	// The destination of a network activity, such as accepting a TCP connection.
	// In a multi hop network activity, the destination represents the receiver of
	// the last hop.
	Destination *AttributeContext_Peer `protobuf:"bytes,2,opt,name=destination" json:"destination,omitempty"`
	// Represents a network request, such as an HTTP request.
	Request *AttributeContext_Request `protobuf:"bytes,4,opt,name=request" json:"request,omitempty"`
	// This is analogous to http_request.headers, however these contents will not be sent to the
	// upstream server. Context_extensions provide an extension mechanism for sending additional
	// information to the auth server without modifying the proto definition. It maps to the
	// internal opaque context in the filter chain.
	ContextExtensions map[string]string `` /* 194-byte string literal not displayed */
}

An attribute is a piece of metadata that describes an activity on a network. For example, the size of an HTTP request, or the status code of an HTTP response.

Each attribute has a type and a name, which is logically defined as a proto message field of the `AttributeContext`. The `AttributeContext` is a collection of individual attributes supported by Envoy authorization system.

func (*AttributeContext) Descriptor

func (*AttributeContext) Descriptor() ([]byte, []int)

func (*AttributeContext) GetContextExtensions

func (m *AttributeContext) GetContextExtensions() map[string]string

func (*AttributeContext) GetDestination

func (m *AttributeContext) GetDestination() *AttributeContext_Peer

func (*AttributeContext) GetRequest

func (m *AttributeContext) GetRequest() *AttributeContext_Request

func (*AttributeContext) GetSource

func (m *AttributeContext) GetSource() *AttributeContext_Peer

func (*AttributeContext) Marshal

func (m *AttributeContext) Marshal() (dAtA []byte, err error)

func (*AttributeContext) MarshalTo

func (m *AttributeContext) MarshalTo(dAtA []byte) (int, error)

func (*AttributeContext) ProtoMessage

func (*AttributeContext) ProtoMessage()

func (*AttributeContext) Reset

func (m *AttributeContext) Reset()

func (*AttributeContext) Size

func (m *AttributeContext) Size() (n int)

func (*AttributeContext) String

func (m *AttributeContext) String() string

func (*AttributeContext) Unmarshal

func (m *AttributeContext) Unmarshal(dAtA []byte) error

func (*AttributeContext) Validate

func (m *AttributeContext) Validate() error

Validate checks the field values on AttributeContext with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type AttributeContextValidationError

type AttributeContextValidationError struct {
	Field  string
	Reason string
	Cause  error
	Key    bool
}

AttributeContextValidationError is the validation error returned by AttributeContext.Validate if the designated constraints aren't met.

func (AttributeContextValidationError) Error

Error satisfies the builtin error interface

type AttributeContext_HttpRequest

type AttributeContext_HttpRequest struct {
	// The unique ID for a request, which can be propagated to downstream
	// systems. The ID should have low probability of collision
	// within a single day for a specific service.
	// For HTTP requests, it should be X-Request-ID or equivalent.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// The HTTP request method, such as `GET`, `POST`.
	Method string `protobuf:"bytes,2,opt,name=method,proto3" json:"method,omitempty"`
	// The HTTP request headers. If multiple headers share the same key, they
	// must be merged according to the HTTP spec. All header keys must be
	// lowercased, because HTTP header keys are case-insensitive.
	Headers map[string]string `` /* 148-byte string literal not displayed */
	// The HTTP URL path.
	Path string `protobuf:"bytes,4,opt,name=path,proto3" json:"path,omitempty"`
	// The HTTP request `Host` or 'Authority` header value.
	Host string `protobuf:"bytes,5,opt,name=host,proto3" json:"host,omitempty"`
	// The HTTP URL scheme, such as `http` and `https`.
	Scheme string `protobuf:"bytes,6,opt,name=scheme,proto3" json:"scheme,omitempty"`
	// The HTTP URL query in the format of `name1=value`&name2=value2`, as it
	// appears in the first line of the HTTP request. No decoding is performed.
	Query string `protobuf:"bytes,7,opt,name=query,proto3" json:"query,omitempty"`
	// The HTTP URL fragment, excluding leading `#`. No URL decoding is performed.
	Fragment string `protobuf:"bytes,8,opt,name=fragment,proto3" json:"fragment,omitempty"`
	// The HTTP request size in bytes. If unknown, it must be -1.
	Size_ int64 `protobuf:"varint,9,opt,name=size,proto3" json:"size,omitempty"`
	// The network protocol used with the request, such as
	// "http/1.1", "spdy/3", "h2", "h2c"
	Protocol string `protobuf:"bytes,10,opt,name=protocol,proto3" json:"protocol,omitempty"`
}

This message defines attributes for an HTTP request. HTTP/1.x, HTTP/2, gRPC are all considered as HTTP requests.

func (*AttributeContext_HttpRequest) Descriptor

func (*AttributeContext_HttpRequest) Descriptor() ([]byte, []int)

func (*AttributeContext_HttpRequest) GetFragment

func (m *AttributeContext_HttpRequest) GetFragment() string

func (*AttributeContext_HttpRequest) GetHeaders

func (m *AttributeContext_HttpRequest) GetHeaders() map[string]string

func (*AttributeContext_HttpRequest) GetHost

func (m *AttributeContext_HttpRequest) GetHost() string

func (*AttributeContext_HttpRequest) GetId

func (*AttributeContext_HttpRequest) GetMethod

func (m *AttributeContext_HttpRequest) GetMethod() string

func (*AttributeContext_HttpRequest) GetPath

func (m *AttributeContext_HttpRequest) GetPath() string

func (*AttributeContext_HttpRequest) GetProtocol

func (m *AttributeContext_HttpRequest) GetProtocol() string

func (*AttributeContext_HttpRequest) GetQuery

func (m *AttributeContext_HttpRequest) GetQuery() string

func (*AttributeContext_HttpRequest) GetScheme

func (m *AttributeContext_HttpRequest) GetScheme() string

func (*AttributeContext_HttpRequest) GetSize_

func (m *AttributeContext_HttpRequest) GetSize_() int64

func (*AttributeContext_HttpRequest) Marshal

func (m *AttributeContext_HttpRequest) Marshal() (dAtA []byte, err error)

func (*AttributeContext_HttpRequest) MarshalTo

func (m *AttributeContext_HttpRequest) MarshalTo(dAtA []byte) (int, error)

func (*AttributeContext_HttpRequest) ProtoMessage

func (*AttributeContext_HttpRequest) ProtoMessage()

func (*AttributeContext_HttpRequest) Reset

func (m *AttributeContext_HttpRequest) Reset()

func (*AttributeContext_HttpRequest) Size

func (m *AttributeContext_HttpRequest) Size() (n int)

func (*AttributeContext_HttpRequest) String

func (*AttributeContext_HttpRequest) Unmarshal

func (m *AttributeContext_HttpRequest) Unmarshal(dAtA []byte) error

func (*AttributeContext_HttpRequest) Validate

func (m *AttributeContext_HttpRequest) Validate() error

Validate checks the field values on AttributeContext_HttpRequest with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type AttributeContext_HttpRequestValidationError

type AttributeContext_HttpRequestValidationError struct {
	Field  string
	Reason string
	Cause  error
	Key    bool
}

AttributeContext_HttpRequestValidationError is the validation error returned by AttributeContext_HttpRequest.Validate if the designated constraints aren't met.

func (AttributeContext_HttpRequestValidationError) Error

Error satisfies the builtin error interface

type AttributeContext_Peer

type AttributeContext_Peer struct {
	// The address of the peer, this is typically the IP address.
	// It can also be UDS path, or others.
	Address *envoy_api_v2_core1.Address `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
	// The canonical service name of the peer.
	// It should be set to :ref:`the HTTP x-envoy-downstream-service-cluster
	// <config_http_conn_man_headers_downstream-service-cluster>`
	// If a more trusted source of the service name is available through mTLS/secure naming, it
	// should be used.
	Service string `protobuf:"bytes,2,opt,name=service,proto3" json:"service,omitempty"`
	// The labels associated with the peer.
	// These could be pod labels for Kubernetes or tags for VMs.
	// The source of the labels could be an X.509 certificate or other configuration.
	Labels map[string]string `` /* 146-byte string literal not displayed */
	// The authenticated identity of this peer.
	// For example, the identity associated with the workload such as a service account.
	// If an X.509 certificate is used to assert the identity this field should be sourced from
	// `Subject` or `Subject Alternative Names`. The primary identity should be the principal.
	// The principal format is issuer specific.
	//
	// Example:
	// *    SPIFFE format is `spiffe://trust-domain/path`
	// *    Google account format is `https://accounts.google.com/{userid}`
	Principal string `protobuf:"bytes,4,opt,name=principal,proto3" json:"principal,omitempty"`
}

This message defines attributes for a node that handles a network request. The node can be either a service or an application that sends, forwards, or receives the request. Service peers should fill in the `service`, `principal`, and `labels` as appropriate.

func (*AttributeContext_Peer) Descriptor

func (*AttributeContext_Peer) Descriptor() ([]byte, []int)

func (*AttributeContext_Peer) GetAddress

func (*AttributeContext_Peer) GetLabels

func (m *AttributeContext_Peer) GetLabels() map[string]string

func (*AttributeContext_Peer) GetPrincipal

func (m *AttributeContext_Peer) GetPrincipal() string

func (*AttributeContext_Peer) GetService

func (m *AttributeContext_Peer) GetService() string

func (*AttributeContext_Peer) Marshal

func (m *AttributeContext_Peer) Marshal() (dAtA []byte, err error)

func (*AttributeContext_Peer) MarshalTo

func (m *AttributeContext_Peer) MarshalTo(dAtA []byte) (int, error)

func (*AttributeContext_Peer) ProtoMessage

func (*AttributeContext_Peer) ProtoMessage()

func (*AttributeContext_Peer) Reset

func (m *AttributeContext_Peer) Reset()

func (*AttributeContext_Peer) Size

func (m *AttributeContext_Peer) Size() (n int)

func (*AttributeContext_Peer) String

func (m *AttributeContext_Peer) String() string

func (*AttributeContext_Peer) Unmarshal

func (m *AttributeContext_Peer) Unmarshal(dAtA []byte) error

func (*AttributeContext_Peer) Validate

func (m *AttributeContext_Peer) Validate() error

Validate checks the field values on AttributeContext_Peer with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type AttributeContext_PeerValidationError

type AttributeContext_PeerValidationError struct {
	Field  string
	Reason string
	Cause  error
	Key    bool
}

AttributeContext_PeerValidationError is the validation error returned by AttributeContext_Peer.Validate if the designated constraints aren't met.

func (AttributeContext_PeerValidationError) Error

Error satisfies the builtin error interface

type AttributeContext_Request

type AttributeContext_Request struct {
	// The timestamp when the proxy receives the first byte of the request.
	Time *google_protobuf4.Timestamp `protobuf:"bytes,1,opt,name=time" json:"time,omitempty"`
	// Represents an HTTP request or an HTTP-like request.
	Http *AttributeContext_HttpRequest `protobuf:"bytes,2,opt,name=http" json:"http,omitempty"`
}

Represents a network request, such as an HTTP request.

func (*AttributeContext_Request) Descriptor

func (*AttributeContext_Request) Descriptor() ([]byte, []int)

func (*AttributeContext_Request) GetHttp

func (*AttributeContext_Request) GetTime

func (*AttributeContext_Request) Marshal

func (m *AttributeContext_Request) Marshal() (dAtA []byte, err error)

func (*AttributeContext_Request) MarshalTo

func (m *AttributeContext_Request) MarshalTo(dAtA []byte) (int, error)

func (*AttributeContext_Request) ProtoMessage

func (*AttributeContext_Request) ProtoMessage()

func (*AttributeContext_Request) Reset

func (m *AttributeContext_Request) Reset()

func (*AttributeContext_Request) Size

func (m *AttributeContext_Request) Size() (n int)

func (*AttributeContext_Request) String

func (m *AttributeContext_Request) String() string

func (*AttributeContext_Request) Unmarshal

func (m *AttributeContext_Request) Unmarshal(dAtA []byte) error

func (*AttributeContext_Request) Validate

func (m *AttributeContext_Request) Validate() error

Validate checks the field values on AttributeContext_Request with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type AttributeContext_RequestValidationError

type AttributeContext_RequestValidationError struct {
	Field  string
	Reason string
	Cause  error
	Key    bool
}

AttributeContext_RequestValidationError is the validation error returned by AttributeContext_Request.Validate if the designated constraints aren't met.

func (AttributeContext_RequestValidationError) Error

Error satisfies the builtin error interface

type AuthorizationClient

type AuthorizationClient interface {
	// Performs authorization check based on the attributes associated with the
	// incoming request, and returns status `OK` or not `OK`.
	Check(ctx context.Context, in *CheckRequest, opts ...grpc.CallOption) (*CheckResponse, error)
}

func NewAuthorizationClient

func NewAuthorizationClient(cc *grpc.ClientConn) AuthorizationClient

type AuthorizationServer

type AuthorizationServer interface {
	// Performs authorization check based on the attributes associated with the
	// incoming request, and returns status `OK` or not `OK`.
	Check(context.Context, *CheckRequest) (*CheckResponse, error)
}

type CheckRequest

type CheckRequest struct {
	// The request attributes.
	Attributes *AttributeContext `protobuf:"bytes,1,opt,name=attributes" json:"attributes,omitempty"`
}

func (*CheckRequest) Descriptor

func (*CheckRequest) Descriptor() ([]byte, []int)

func (*CheckRequest) GetAttributes

func (m *CheckRequest) GetAttributes() *AttributeContext

func (*CheckRequest) Marshal

func (m *CheckRequest) Marshal() (dAtA []byte, err error)

func (*CheckRequest) MarshalTo

func (m *CheckRequest) MarshalTo(dAtA []byte) (int, error)

func (*CheckRequest) ProtoMessage

func (*CheckRequest) ProtoMessage()

func (*CheckRequest) Reset

func (m *CheckRequest) Reset()

func (*CheckRequest) Size

func (m *CheckRequest) Size() (n int)

func (*CheckRequest) String

func (m *CheckRequest) String() string

func (*CheckRequest) Unmarshal

func (m *CheckRequest) Unmarshal(dAtA []byte) error

func (*CheckRequest) Validate

func (m *CheckRequest) Validate() error

Validate checks the field values on CheckRequest with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type CheckRequestValidationError

type CheckRequestValidationError struct {
	Field  string
	Reason string
	Cause  error
	Key    bool
}

CheckRequestValidationError is the validation error returned by CheckRequest.Validate if the designated constraints aren't met.

func (CheckRequestValidationError) Error

Error satisfies the builtin error interface

type CheckResponse

type CheckResponse struct {
	// Status `OK` allows the request. Any other status indicates the request should be denied.
	Status *google_rpc.Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
	// An message that contains HTTP response attributes. This message is
	// used when the authorization service needs to send custom responses to the
	// downstream client or, to modify/add request headers being dispatched to the upstream.
	//
	// Types that are valid to be assigned to HttpResponse:
	//	*CheckResponse_DeniedResponse
	//	*CheckResponse_OkResponse
	HttpResponse isCheckResponse_HttpResponse `protobuf_oneof:"http_response"`
}

Intended for gRPC and Network Authorization servers `only`.

func (*CheckResponse) Descriptor

func (*CheckResponse) Descriptor() ([]byte, []int)

func (*CheckResponse) GetDeniedResponse

func (m *CheckResponse) GetDeniedResponse() *DeniedHttpResponse

func (*CheckResponse) GetHttpResponse

func (m *CheckResponse) GetHttpResponse() isCheckResponse_HttpResponse

func (*CheckResponse) GetOkResponse

func (m *CheckResponse) GetOkResponse() *OkHttpResponse

func (*CheckResponse) GetStatus

func (m *CheckResponse) GetStatus() *google_rpc.Status

func (*CheckResponse) Marshal

func (m *CheckResponse) Marshal() (dAtA []byte, err error)

func (*CheckResponse) MarshalTo

func (m *CheckResponse) MarshalTo(dAtA []byte) (int, error)

func (*CheckResponse) ProtoMessage

func (*CheckResponse) ProtoMessage()

func (*CheckResponse) Reset

func (m *CheckResponse) Reset()

func (*CheckResponse) Size

func (m *CheckResponse) Size() (n int)

func (*CheckResponse) String

func (m *CheckResponse) String() string

func (*CheckResponse) Unmarshal

func (m *CheckResponse) Unmarshal(dAtA []byte) error

func (*CheckResponse) Validate

func (m *CheckResponse) Validate() error

Validate checks the field values on CheckResponse with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

func (*CheckResponse) XXX_OneofFuncs

func (*CheckResponse) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type CheckResponseValidationError

type CheckResponseValidationError struct {
	Field  string
	Reason string
	Cause  error
	Key    bool
}

CheckResponseValidationError is the validation error returned by CheckResponse.Validate if the designated constraints aren't met.

func (CheckResponseValidationError) Error

Error satisfies the builtin error interface

type CheckResponse_DeniedResponse

type CheckResponse_DeniedResponse struct {
	DeniedResponse *DeniedHttpResponse `protobuf:"bytes,2,opt,name=denied_response,json=deniedResponse,oneof"`
}

func (*CheckResponse_DeniedResponse) MarshalTo

func (m *CheckResponse_DeniedResponse) MarshalTo(dAtA []byte) (int, error)

func (*CheckResponse_DeniedResponse) Size

func (m *CheckResponse_DeniedResponse) Size() (n int)

type CheckResponse_OkResponse

type CheckResponse_OkResponse struct {
	OkResponse *OkHttpResponse `protobuf:"bytes,3,opt,name=ok_response,json=okResponse,oneof"`
}

func (*CheckResponse_OkResponse) MarshalTo

func (m *CheckResponse_OkResponse) MarshalTo(dAtA []byte) (int, error)

func (*CheckResponse_OkResponse) Size

func (m *CheckResponse_OkResponse) Size() (n int)

type DeniedHttpResponse

type DeniedHttpResponse struct {
	// This field allows the authorization service to send a HTTP response status
	// code to the downstream client other than 403 (Forbidden).
	Status *envoy_type.HttpStatus `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
	// This field allows the authorization service to send HTTP response headers
	// to the the downstream client.
	Headers []*envoy_api_v2_core.HeaderValueOption `protobuf:"bytes,2,rep,name=headers" json:"headers,omitempty"`
	// This field allows the authorization service to send a response body data
	// to the the downstream client.
	Body string `protobuf:"bytes,3,opt,name=body,proto3" json:"body,omitempty"`
}

HTTP attributes for a denied response.

func (*DeniedHttpResponse) Descriptor

func (*DeniedHttpResponse) Descriptor() ([]byte, []int)

func (*DeniedHttpResponse) GetBody

func (m *DeniedHttpResponse) GetBody() string

func (*DeniedHttpResponse) GetHeaders

func (*DeniedHttpResponse) GetStatus

func (m *DeniedHttpResponse) GetStatus() *envoy_type.HttpStatus

func (*DeniedHttpResponse) Marshal

func (m *DeniedHttpResponse) Marshal() (dAtA []byte, err error)

func (*DeniedHttpResponse) MarshalTo

func (m *DeniedHttpResponse) MarshalTo(dAtA []byte) (int, error)

func (*DeniedHttpResponse) ProtoMessage

func (*DeniedHttpResponse) ProtoMessage()

func (*DeniedHttpResponse) Reset

func (m *DeniedHttpResponse) Reset()

func (*DeniedHttpResponse) Size

func (m *DeniedHttpResponse) Size() (n int)

func (*DeniedHttpResponse) String

func (m *DeniedHttpResponse) String() string

func (*DeniedHttpResponse) Unmarshal

func (m *DeniedHttpResponse) Unmarshal(dAtA []byte) error

func (*DeniedHttpResponse) Validate

func (m *DeniedHttpResponse) Validate() error

Validate checks the field values on DeniedHttpResponse with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type DeniedHttpResponseValidationError

type DeniedHttpResponseValidationError struct {
	Field  string
	Reason string
	Cause  error
	Key    bool
}

DeniedHttpResponseValidationError is the validation error returned by DeniedHttpResponse.Validate if the designated constraints aren't met.

func (DeniedHttpResponseValidationError) Error

Error satisfies the builtin error interface

type OkHttpResponse

type OkHttpResponse struct {
	// HTTP entity headers in addition to the original request headers. This allows the authorization
	// service to append, to add or to override headers from the original request before
	// dispatching it to the upstream. By setting `append` field to `true` in the `HeaderValueOption`,
	// the filter will append the correspondent header value to the matched request header. Note that
	// by Leaving `append` as false, the filter will either add a new header, or override an existing
	// one if there is a match.
	Headers []*envoy_api_v2_core.HeaderValueOption `protobuf:"bytes,2,rep,name=headers" json:"headers,omitempty"`
}

HTTP attributes for an ok response.

func (*OkHttpResponse) Descriptor

func (*OkHttpResponse) Descriptor() ([]byte, []int)

func (*OkHttpResponse) GetHeaders

func (*OkHttpResponse) Marshal

func (m *OkHttpResponse) Marshal() (dAtA []byte, err error)

func (*OkHttpResponse) MarshalTo

func (m *OkHttpResponse) MarshalTo(dAtA []byte) (int, error)

func (*OkHttpResponse) ProtoMessage

func (*OkHttpResponse) ProtoMessage()

func (*OkHttpResponse) Reset

func (m *OkHttpResponse) Reset()

func (*OkHttpResponse) Size

func (m *OkHttpResponse) Size() (n int)

func (*OkHttpResponse) String

func (m *OkHttpResponse) String() string

func (*OkHttpResponse) Unmarshal

func (m *OkHttpResponse) Unmarshal(dAtA []byte) error

func (*OkHttpResponse) Validate

func (m *OkHttpResponse) Validate() error

Validate checks the field values on OkHttpResponse with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type OkHttpResponseValidationError

type OkHttpResponseValidationError struct {
	Field  string
	Reason string
	Cause  error
	Key    bool
}

OkHttpResponseValidationError is the validation error returned by OkHttpResponse.Validate if the designated constraints aren't met.

func (OkHttpResponseValidationError) Error

Error satisfies the builtin error interface

Jump to

Keyboard shortcuts

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