1// Code generated by protoc-gen-go. DO NOT EDIT.
2// versions:
3// 	protoc-gen-go v1.25.0
4// 	protoc        v3.14.0
5// source: envoy/extensions/filters/network/ext_authz/v3/ext_authz.proto
6
7package envoy_extensions_filters_network_ext_authz_v3
8
9import (
10	_ "github.com/cncf/xds/go/udpa/annotations"
11	v3 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
12	v31 "github.com/envoyproxy/go-control-plane/envoy/type/matcher/v3"
13	_ "github.com/envoyproxy/protoc-gen-validate/validate"
14	proto "github.com/golang/protobuf/proto"
15	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
16	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
17	reflect "reflect"
18	sync "sync"
19)
20
21const (
22	// Verify that this generated code is sufficiently up-to-date.
23	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
24	// Verify that runtime/protoimpl is sufficiently up-to-date.
25	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
26)
27
28// This is a compile-time assertion that a sufficiently up-to-date version
29// of the legacy proto package is being used.
30const _ = proto.ProtoPackageIsVersion4
31
32// External Authorization filter calls out to an external service over the
33// gRPC Authorization API defined by
34// :ref:`CheckRequest <envoy_v3_api_msg_service.auth.v3.CheckRequest>`.
35// A failed check will cause this filter to close the TCP connection.
36// [#next-free-field: 7]
37type ExtAuthz struct {
38	state         protoimpl.MessageState
39	sizeCache     protoimpl.SizeCache
40	unknownFields protoimpl.UnknownFields
41
42	// The prefix to use when emitting statistics.
43	StatPrefix string `protobuf:"bytes,1,opt,name=stat_prefix,json=statPrefix,proto3" json:"stat_prefix,omitempty"`
44	// The external authorization gRPC service configuration.
45	// The default timeout is set to 200ms by this filter.
46	GrpcService *v3.GrpcService `protobuf:"bytes,2,opt,name=grpc_service,json=grpcService,proto3" json:"grpc_service,omitempty"`
47	// The filter's behaviour in case the external authorization service does
48	// not respond back. When it is set to true, Envoy will also allow traffic in case of
49	// communication failure between authorization service and the proxy.
50	// Defaults to false.
51	FailureModeAllow bool `protobuf:"varint,3,opt,name=failure_mode_allow,json=failureModeAllow,proto3" json:"failure_mode_allow,omitempty"`
52	// Specifies if the peer certificate is sent to the external service.
53	//
54	// When this field is true, Envoy will include the peer X.509 certificate, if available, in the
55	// :ref:`certificate<envoy_v3_api_field_service.auth.v3.AttributeContext.Peer.certificate>`.
56	IncludePeerCertificate bool `protobuf:"varint,4,opt,name=include_peer_certificate,json=includePeerCertificate,proto3" json:"include_peer_certificate,omitempty"`
57	// API version for ext_authz transport protocol. This describes the ext_authz gRPC endpoint and
58	// version of Check{Request,Response} used on the wire.
59	TransportApiVersion v3.ApiVersion `protobuf:"varint,5,opt,name=transport_api_version,json=transportApiVersion,proto3,enum=envoy.config.core.v3.ApiVersion" json:"transport_api_version,omitempty"`
60	// Specifies if the filter is enabled with metadata matcher.
61	// If this field is not specified, the filter will be enabled for all requests.
62	FilterEnabledMetadata *v31.MetadataMatcher `protobuf:"bytes,6,opt,name=filter_enabled_metadata,json=filterEnabledMetadata,proto3" json:"filter_enabled_metadata,omitempty"`
63}
64
65func (x *ExtAuthz) Reset() {
66	*x = ExtAuthz{}
67	if protoimpl.UnsafeEnabled {
68		mi := &file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_msgTypes[0]
69		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
70		ms.StoreMessageInfo(mi)
71	}
72}
73
74func (x *ExtAuthz) String() string {
75	return protoimpl.X.MessageStringOf(x)
76}
77
78func (*ExtAuthz) ProtoMessage() {}
79
80func (x *ExtAuthz) ProtoReflect() protoreflect.Message {
81	mi := &file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_msgTypes[0]
82	if protoimpl.UnsafeEnabled && x != nil {
83		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
84		if ms.LoadMessageInfo() == nil {
85			ms.StoreMessageInfo(mi)
86		}
87		return ms
88	}
89	return mi.MessageOf(x)
90}
91
92// Deprecated: Use ExtAuthz.ProtoReflect.Descriptor instead.
93func (*ExtAuthz) Descriptor() ([]byte, []int) {
94	return file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDescGZIP(), []int{0}
95}
96
97func (x *ExtAuthz) GetStatPrefix() string {
98	if x != nil {
99		return x.StatPrefix
100	}
101	return ""
102}
103
104func (x *ExtAuthz) GetGrpcService() *v3.GrpcService {
105	if x != nil {
106		return x.GrpcService
107	}
108	return nil
109}
110
111func (x *ExtAuthz) GetFailureModeAllow() bool {
112	if x != nil {
113		return x.FailureModeAllow
114	}
115	return false
116}
117
118func (x *ExtAuthz) GetIncludePeerCertificate() bool {
119	if x != nil {
120		return x.IncludePeerCertificate
121	}
122	return false
123}
124
125func (x *ExtAuthz) GetTransportApiVersion() v3.ApiVersion {
126	if x != nil {
127		return x.TransportApiVersion
128	}
129	return v3.ApiVersion_AUTO
130}
131
132func (x *ExtAuthz) GetFilterEnabledMetadata() *v31.MetadataMatcher {
133	if x != nil {
134		return x.FilterEnabledMetadata
135	}
136	return nil
137}
138
139var File_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto protoreflect.FileDescriptor
140
141var file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDesc = []byte{
142	0x0a, 0x3d, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
143	0x6e, 0x73, 0x2f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x2f, 0x6e, 0x65, 0x74, 0x77, 0x6f,
144	0x72, 0x6b, 0x2f, 0x65, 0x78, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x7a, 0x2f, 0x76, 0x33, 0x2f,
145	0x65, 0x78, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x7a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
146	0x2d, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
147	0x73, 0x2e, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
148	0x6b, 0x2e, 0x65, 0x78, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x7a, 0x2e, 0x76, 0x33, 0x1a, 0x28,
149	0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x63, 0x6f, 0x72,
150	0x65, 0x2f, 0x76, 0x33, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x6f, 0x75, 0x72,
151	0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x27, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f,
152	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x33, 0x2f, 0x67,
153	0x72, 0x70, 0x63, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
154	0x6f, 0x1a, 0x24, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x6d, 0x61,
155	0x74, 0x63, 0x68, 0x65, 0x72, 0x2f, 0x76, 0x33, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
156	0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e,
157	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
158	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e,
159	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
160	0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64,
161	0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f,
162	0x74, 0x6f, 0x22, 0xdc, 0x03, 0x0a, 0x08, 0x45, 0x78, 0x74, 0x41, 0x75, 0x74, 0x68, 0x7a, 0x12,
163	0x28, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01,
164	0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x73,
165	0x74, 0x61, 0x74, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x44, 0x0a, 0x0c, 0x67, 0x72, 0x70,
166	0x63, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
167	0x21, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63,
168	0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69,
169	0x63, 0x65, 0x52, 0x0b, 0x67, 0x72, 0x70, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12,
170	0x2c, 0x0a, 0x12, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x5f,
171	0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x66, 0x61, 0x69,
172	0x6c, 0x75, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x12, 0x38, 0x0a,
173	0x18, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x65,
174	0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52,
175	0x16, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x65, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74,
176	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x5e, 0x0a, 0x15, 0x74, 0x72, 0x61, 0x6e, 0x73,
177	0x70, 0x6f, 0x72, 0x74, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
178	0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63,
179	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x41, 0x70,
180	0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02,
181	0x10, 0x01, 0x52, 0x13, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x70, 0x69,
182	0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x5e, 0x0a, 0x17, 0x66, 0x69, 0x6c, 0x74, 0x65,
183	0x72, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
184	0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
185	0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33,
186	0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72,
187	0x52, 0x15, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x4d,
188	0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x38, 0x9a, 0xc5, 0x88, 0x1e, 0x33, 0x0a, 0x31,
189	0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x66, 0x69, 0x6c,
190	0x74, 0x65, 0x72, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x65, 0x78, 0x74, 0x5f,
191	0x61, 0x75, 0x74, 0x68, 0x7a, 0x2e, 0x76, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x41, 0x75, 0x74, 0x68,
192	0x7a, 0x42, 0x56, 0x0a, 0x3b, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f,
193	0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
194	0x6f, 0x6e, 0x73, 0x2e, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x2e, 0x6e, 0x65, 0x74, 0x77,
195	0x6f, 0x72, 0x6b, 0x2e, 0x65, 0x78, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x7a, 0x2e, 0x76, 0x33,
196	0x42, 0x0d, 0x45, 0x78, 0x74, 0x41, 0x75, 0x74, 0x68, 0x7a, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50,
197	0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x02, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
198	0x33,
199}
200
201var (
202	file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDescOnce sync.Once
203	file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDescData = file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDesc
204)
205
206func file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDescGZIP() []byte {
207	file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDescOnce.Do(func() {
208		file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDescData)
209	})
210	return file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDescData
211}
212
213var file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
214var file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_goTypes = []interface{}{
215	(*ExtAuthz)(nil),            // 0: envoy.extensions.filters.network.ext_authz.v3.ExtAuthz
216	(*v3.GrpcService)(nil),      // 1: envoy.config.core.v3.GrpcService
217	(v3.ApiVersion)(0),          // 2: envoy.config.core.v3.ApiVersion
218	(*v31.MetadataMatcher)(nil), // 3: envoy.type.matcher.v3.MetadataMatcher
219}
220var file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_depIdxs = []int32{
221	1, // 0: envoy.extensions.filters.network.ext_authz.v3.ExtAuthz.grpc_service:type_name -> envoy.config.core.v3.GrpcService
222	2, // 1: envoy.extensions.filters.network.ext_authz.v3.ExtAuthz.transport_api_version:type_name -> envoy.config.core.v3.ApiVersion
223	3, // 2: envoy.extensions.filters.network.ext_authz.v3.ExtAuthz.filter_enabled_metadata:type_name -> envoy.type.matcher.v3.MetadataMatcher
224	3, // [3:3] is the sub-list for method output_type
225	3, // [3:3] is the sub-list for method input_type
226	3, // [3:3] is the sub-list for extension type_name
227	3, // [3:3] is the sub-list for extension extendee
228	0, // [0:3] is the sub-list for field type_name
229}
230
231func init() { file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_init() }
232func file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_init() {
233	if File_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto != nil {
234		return
235	}
236	if !protoimpl.UnsafeEnabled {
237		file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
238			switch v := v.(*ExtAuthz); i {
239			case 0:
240				return &v.state
241			case 1:
242				return &v.sizeCache
243			case 2:
244				return &v.unknownFields
245			default:
246				return nil
247			}
248		}
249	}
250	type x struct{}
251	out := protoimpl.TypeBuilder{
252		File: protoimpl.DescBuilder{
253			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
254			RawDescriptor: file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDesc,
255			NumEnums:      0,
256			NumMessages:   1,
257			NumExtensions: 0,
258			NumServices:   0,
259		},
260		GoTypes:           file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_goTypes,
261		DependencyIndexes: file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_depIdxs,
262		MessageInfos:      file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_msgTypes,
263	}.Build()
264	File_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto = out.File
265	file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_rawDesc = nil
266	file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_goTypes = nil
267	file_envoy_extensions_filters_network_ext_authz_v3_ext_authz_proto_depIdxs = nil
268}
269