...

Source file src/github.com/datawire/ambassador/v2/pkg/api/envoy/config/rbac/v4alpha/rbac.pb.go

Documentation: github.com/datawire/ambassador/v2/pkg/api/envoy/config/rbac/v4alpha

     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/config/rbac/v4alpha/rbac.proto
     6  
     7  package envoy_config_rbac_v4alpha
     8  
     9  import (
    10  	_ "github.com/cncf/udpa/go/udpa/annotations"
    11  	v4alpha2 "github.com/datawire/ambassador/v2/pkg/api/envoy/config/core/v4alpha"
    12  	v4alpha "github.com/datawire/ambassador/v2/pkg/api/envoy/config/route/v4alpha"
    13  	v4alpha1 "github.com/datawire/ambassador/v2/pkg/api/envoy/type/matcher/v4alpha"
    14  	_ "github.com/envoyproxy/protoc-gen-validate/validate"
    15  	proto "github.com/golang/protobuf/proto"
    16  	v1alpha1 "google.golang.org/genproto/googleapis/api/expr/v1alpha1"
    17  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    18  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    19  	reflect "reflect"
    20  	sync "sync"
    21  )
    22  
    23  const (
    24  	// Verify that this generated code is sufficiently up-to-date.
    25  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    26  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    27  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    28  )
    29  
    30  // This is a compile-time assertion that a sufficiently up-to-date version
    31  // of the legacy proto package is being used.
    32  const _ = proto.ProtoPackageIsVersion4
    33  
    34  // Should we do safe-list or block-list style access control?
    35  type RBAC_Action int32
    36  
    37  const (
    38  	// The policies grant access to principals. The rest are denied. This is safe-list style
    39  	// access control. This is the default type.
    40  	RBAC_ALLOW RBAC_Action = 0
    41  	// The policies deny access to principals. The rest are allowed. This is block-list style
    42  	// access control.
    43  	RBAC_DENY RBAC_Action = 1
    44  	// The policies set the `access_log_hint` dynamic metadata key based on if requests match.
    45  	// All requests are allowed.
    46  	RBAC_LOG RBAC_Action = 2
    47  )
    48  
    49  // Enum value maps for RBAC_Action.
    50  var (
    51  	RBAC_Action_name = map[int32]string{
    52  		0: "ALLOW",
    53  		1: "DENY",
    54  		2: "LOG",
    55  	}
    56  	RBAC_Action_value = map[string]int32{
    57  		"ALLOW": 0,
    58  		"DENY":  1,
    59  		"LOG":   2,
    60  	}
    61  )
    62  
    63  func (x RBAC_Action) Enum() *RBAC_Action {
    64  	p := new(RBAC_Action)
    65  	*p = x
    66  	return p
    67  }
    68  
    69  func (x RBAC_Action) String() string {
    70  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    71  }
    72  
    73  func (RBAC_Action) Descriptor() protoreflect.EnumDescriptor {
    74  	return file_envoy_config_rbac_v4alpha_rbac_proto_enumTypes[0].Descriptor()
    75  }
    76  
    77  func (RBAC_Action) Type() protoreflect.EnumType {
    78  	return &file_envoy_config_rbac_v4alpha_rbac_proto_enumTypes[0]
    79  }
    80  
    81  func (x RBAC_Action) Number() protoreflect.EnumNumber {
    82  	return protoreflect.EnumNumber(x)
    83  }
    84  
    85  // Deprecated: Use RBAC_Action.Descriptor instead.
    86  func (RBAC_Action) EnumDescriptor() ([]byte, []int) {
    87  	return file_envoy_config_rbac_v4alpha_rbac_proto_rawDescGZIP(), []int{0, 0}
    88  }
    89  
    90  // Role Based Access Control (RBAC) provides service-level and method-level access control for a
    91  // service. RBAC policies are additive. The policies are examined in order. Requests are allowed
    92  // or denied based on the `action` and whether a matching policy is found. For instance, if the
    93  // action is ALLOW and a matching policy is found the request should be allowed.
    94  //
    95  // RBAC can also be used to make access logging decisions by communicating with access loggers
    96  // through dynamic metadata. When the action is LOG and at least one policy matches, the
    97  // `access_log_hint` value in the shared key namespace 'envoy.common' is set to `true` indicating
    98  // the request should be logged.
    99  //
   100  // Here is an example of RBAC configuration. It has two policies:
   101  //
   102  //   - Service account "cluster.local/ns/default/sa/admin" has full access to the service, and so
   103  //     does "cluster.local/ns/default/sa/superuser".
   104  //
   105  //   - Any user can read ("GET") the service at paths with prefix "/products", so long as the
   106  //     destination port is either 80 or 443.
   107  //
   108  //     .. code-block:: yaml
   109  //
   110  //     action: ALLOW
   111  //     policies:
   112  //     "service-admin":
   113  //     permissions:
   114  //
   115  //   - any: true
   116  //     principals:
   117  //
   118  //   - authenticated:
   119  //     principal_name:
   120  //     exact: "cluster.local/ns/default/sa/admin"
   121  //
   122  //   - authenticated:
   123  //     principal_name:
   124  //     exact: "cluster.local/ns/default/sa/superuser"
   125  //     "product-viewer":
   126  //     permissions:
   127  //
   128  //   - and_rules:
   129  //     rules:
   130  //
   131  //   - header: { name: ":method", exact_match: "GET" }
   132  //
   133  //   - url_path:
   134  //     path: { prefix: "/products" }
   135  //
   136  //   - or_rules:
   137  //     rules:
   138  //
   139  //   - destination_port: 80
   140  //
   141  //   - destination_port: 443
   142  //     principals:
   143  //
   144  //   - any: true
   145  type RBAC struct {
   146  	state         protoimpl.MessageState
   147  	sizeCache     protoimpl.SizeCache
   148  	unknownFields protoimpl.UnknownFields
   149  
   150  	// The action to take if a policy matches. Every action either allows or denies a request,
   151  	// and can also carry out action-specific operations.
   152  	//
   153  	// Actions:
   154  	//
   155  	//  * ALLOW: Allows the request if and only if there is a policy that matches
   156  	//    the request.
   157  	//  * DENY: Allows the request if and only if there are no policies that
   158  	//    match the request.
   159  	//  * LOG: Allows all requests. If at least one policy matches, the dynamic
   160  	//    metadata key `access_log_hint` is set to the value `true` under the shared
   161  	//    key namespace 'envoy.common'. If no policies match, it is set to `false`.
   162  	//    Other actions do not modify this key.
   163  	//
   164  	Action RBAC_Action `protobuf:"varint,1,opt,name=action,proto3,enum=envoy.config.rbac.v4alpha.RBAC_Action" json:"action,omitempty"`
   165  	// Maps from policy name to policy. A match occurs when at least one policy matches the request.
   166  	Policies map[string]*Policy `protobuf:"bytes,2,rep,name=policies,proto3" json:"policies,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   167  }
   168  
   169  func (x *RBAC) Reset() {
   170  	*x = RBAC{}
   171  	if protoimpl.UnsafeEnabled {
   172  		mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[0]
   173  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   174  		ms.StoreMessageInfo(mi)
   175  	}
   176  }
   177  
   178  func (x *RBAC) String() string {
   179  	return protoimpl.X.MessageStringOf(x)
   180  }
   181  
   182  func (*RBAC) ProtoMessage() {}
   183  
   184  func (x *RBAC) ProtoReflect() protoreflect.Message {
   185  	mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[0]
   186  	if protoimpl.UnsafeEnabled && x != nil {
   187  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   188  		if ms.LoadMessageInfo() == nil {
   189  			ms.StoreMessageInfo(mi)
   190  		}
   191  		return ms
   192  	}
   193  	return mi.MessageOf(x)
   194  }
   195  
   196  // Deprecated: Use RBAC.ProtoReflect.Descriptor instead.
   197  func (*RBAC) Descriptor() ([]byte, []int) {
   198  	return file_envoy_config_rbac_v4alpha_rbac_proto_rawDescGZIP(), []int{0}
   199  }
   200  
   201  func (x *RBAC) GetAction() RBAC_Action {
   202  	if x != nil {
   203  		return x.Action
   204  	}
   205  	return RBAC_ALLOW
   206  }
   207  
   208  func (x *RBAC) GetPolicies() map[string]*Policy {
   209  	if x != nil {
   210  		return x.Policies
   211  	}
   212  	return nil
   213  }
   214  
   215  // Policy specifies a role and the principals that are assigned/denied the role.
   216  // A policy matches if and only if at least one of its permissions match the
   217  // action taking place AND at least one of its principals match the downstream
   218  // AND the condition is true if specified.
   219  type Policy struct {
   220  	state         protoimpl.MessageState
   221  	sizeCache     protoimpl.SizeCache
   222  	unknownFields protoimpl.UnknownFields
   223  
   224  	// Required. The set of permissions that define a role. Each permission is
   225  	// matched with OR semantics. To match all actions for this policy, a single
   226  	// Permission with the `any` field set to true should be used.
   227  	Permissions []*Permission `protobuf:"bytes,1,rep,name=permissions,proto3" json:"permissions,omitempty"`
   228  	// Required. The set of principals that are assigned/denied the role based on
   229  	// “action”. Each principal is matched with OR semantics. To match all
   230  	// downstreams for this policy, a single Principal with the `any` field set to
   231  	// true should be used.
   232  	Principals []*Principal `protobuf:"bytes,2,rep,name=principals,proto3" json:"principals,omitempty"`
   233  	// Types that are assignable to ExpressionSpecifier:
   234  	//	*Policy_Condition
   235  	//	*Policy_CheckedCondition
   236  	ExpressionSpecifier isPolicy_ExpressionSpecifier `protobuf_oneof:"expression_specifier"`
   237  }
   238  
   239  func (x *Policy) Reset() {
   240  	*x = Policy{}
   241  	if protoimpl.UnsafeEnabled {
   242  		mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[1]
   243  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   244  		ms.StoreMessageInfo(mi)
   245  	}
   246  }
   247  
   248  func (x *Policy) String() string {
   249  	return protoimpl.X.MessageStringOf(x)
   250  }
   251  
   252  func (*Policy) ProtoMessage() {}
   253  
   254  func (x *Policy) ProtoReflect() protoreflect.Message {
   255  	mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[1]
   256  	if protoimpl.UnsafeEnabled && x != nil {
   257  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   258  		if ms.LoadMessageInfo() == nil {
   259  			ms.StoreMessageInfo(mi)
   260  		}
   261  		return ms
   262  	}
   263  	return mi.MessageOf(x)
   264  }
   265  
   266  // Deprecated: Use Policy.ProtoReflect.Descriptor instead.
   267  func (*Policy) Descriptor() ([]byte, []int) {
   268  	return file_envoy_config_rbac_v4alpha_rbac_proto_rawDescGZIP(), []int{1}
   269  }
   270  
   271  func (x *Policy) GetPermissions() []*Permission {
   272  	if x != nil {
   273  		return x.Permissions
   274  	}
   275  	return nil
   276  }
   277  
   278  func (x *Policy) GetPrincipals() []*Principal {
   279  	if x != nil {
   280  		return x.Principals
   281  	}
   282  	return nil
   283  }
   284  
   285  func (m *Policy) GetExpressionSpecifier() isPolicy_ExpressionSpecifier {
   286  	if m != nil {
   287  		return m.ExpressionSpecifier
   288  	}
   289  	return nil
   290  }
   291  
   292  func (x *Policy) GetCondition() *v1alpha1.Expr {
   293  	if x, ok := x.GetExpressionSpecifier().(*Policy_Condition); ok {
   294  		return x.Condition
   295  	}
   296  	return nil
   297  }
   298  
   299  func (x *Policy) GetCheckedCondition() *v1alpha1.CheckedExpr {
   300  	if x, ok := x.GetExpressionSpecifier().(*Policy_CheckedCondition); ok {
   301  		return x.CheckedCondition
   302  	}
   303  	return nil
   304  }
   305  
   306  type isPolicy_ExpressionSpecifier interface {
   307  	isPolicy_ExpressionSpecifier()
   308  }
   309  
   310  type Policy_Condition struct {
   311  	// An optional symbolic expression specifying an access control
   312  	// :ref:`condition <arch_overview_condition>`. The condition is combined
   313  	// with the permissions and the principals as a clause with AND semantics.
   314  	// Only be used when checked_condition is not used.
   315  	Condition *v1alpha1.Expr `protobuf:"bytes,3,opt,name=condition,proto3,oneof"`
   316  }
   317  
   318  type Policy_CheckedCondition struct {
   319  	// [#not-implemented-hide:]
   320  	// An optional symbolic expression that has been successfully type checked.
   321  	// Only be used when condition is not used.
   322  	CheckedCondition *v1alpha1.CheckedExpr `protobuf:"bytes,4,opt,name=checked_condition,json=checkedCondition,proto3,oneof"`
   323  }
   324  
   325  func (*Policy_Condition) isPolicy_ExpressionSpecifier() {}
   326  
   327  func (*Policy_CheckedCondition) isPolicy_ExpressionSpecifier() {}
   328  
   329  // Permission defines an action (or actions) that a principal can take.
   330  // [#next-free-field: 11]
   331  type Permission struct {
   332  	state         protoimpl.MessageState
   333  	sizeCache     protoimpl.SizeCache
   334  	unknownFields protoimpl.UnknownFields
   335  
   336  	// Types that are assignable to Rule:
   337  	//	*Permission_AndRules
   338  	//	*Permission_OrRules
   339  	//	*Permission_Any
   340  	//	*Permission_Header
   341  	//	*Permission_UrlPath
   342  	//	*Permission_DestinationIp
   343  	//	*Permission_DestinationPort
   344  	//	*Permission_Metadata
   345  	//	*Permission_NotRule
   346  	//	*Permission_RequestedServerName
   347  	Rule isPermission_Rule `protobuf_oneof:"rule"`
   348  }
   349  
   350  func (x *Permission) Reset() {
   351  	*x = Permission{}
   352  	if protoimpl.UnsafeEnabled {
   353  		mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[2]
   354  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   355  		ms.StoreMessageInfo(mi)
   356  	}
   357  }
   358  
   359  func (x *Permission) String() string {
   360  	return protoimpl.X.MessageStringOf(x)
   361  }
   362  
   363  func (*Permission) ProtoMessage() {}
   364  
   365  func (x *Permission) ProtoReflect() protoreflect.Message {
   366  	mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[2]
   367  	if protoimpl.UnsafeEnabled && x != nil {
   368  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   369  		if ms.LoadMessageInfo() == nil {
   370  			ms.StoreMessageInfo(mi)
   371  		}
   372  		return ms
   373  	}
   374  	return mi.MessageOf(x)
   375  }
   376  
   377  // Deprecated: Use Permission.ProtoReflect.Descriptor instead.
   378  func (*Permission) Descriptor() ([]byte, []int) {
   379  	return file_envoy_config_rbac_v4alpha_rbac_proto_rawDescGZIP(), []int{2}
   380  }
   381  
   382  func (m *Permission) GetRule() isPermission_Rule {
   383  	if m != nil {
   384  		return m.Rule
   385  	}
   386  	return nil
   387  }
   388  
   389  func (x *Permission) GetAndRules() *Permission_Set {
   390  	if x, ok := x.GetRule().(*Permission_AndRules); ok {
   391  		return x.AndRules
   392  	}
   393  	return nil
   394  }
   395  
   396  func (x *Permission) GetOrRules() *Permission_Set {
   397  	if x, ok := x.GetRule().(*Permission_OrRules); ok {
   398  		return x.OrRules
   399  	}
   400  	return nil
   401  }
   402  
   403  func (x *Permission) GetAny() bool {
   404  	if x, ok := x.GetRule().(*Permission_Any); ok {
   405  		return x.Any
   406  	}
   407  	return false
   408  }
   409  
   410  func (x *Permission) GetHeader() *v4alpha.HeaderMatcher {
   411  	if x, ok := x.GetRule().(*Permission_Header); ok {
   412  		return x.Header
   413  	}
   414  	return nil
   415  }
   416  
   417  func (x *Permission) GetUrlPath() *v4alpha1.PathMatcher {
   418  	if x, ok := x.GetRule().(*Permission_UrlPath); ok {
   419  		return x.UrlPath
   420  	}
   421  	return nil
   422  }
   423  
   424  func (x *Permission) GetDestinationIp() *v4alpha2.CidrRange {
   425  	if x, ok := x.GetRule().(*Permission_DestinationIp); ok {
   426  		return x.DestinationIp
   427  	}
   428  	return nil
   429  }
   430  
   431  func (x *Permission) GetDestinationPort() uint32 {
   432  	if x, ok := x.GetRule().(*Permission_DestinationPort); ok {
   433  		return x.DestinationPort
   434  	}
   435  	return 0
   436  }
   437  
   438  func (x *Permission) GetMetadata() *v4alpha1.MetadataMatcher {
   439  	if x, ok := x.GetRule().(*Permission_Metadata); ok {
   440  		return x.Metadata
   441  	}
   442  	return nil
   443  }
   444  
   445  func (x *Permission) GetNotRule() *Permission {
   446  	if x, ok := x.GetRule().(*Permission_NotRule); ok {
   447  		return x.NotRule
   448  	}
   449  	return nil
   450  }
   451  
   452  func (x *Permission) GetRequestedServerName() *v4alpha1.StringMatcher {
   453  	if x, ok := x.GetRule().(*Permission_RequestedServerName); ok {
   454  		return x.RequestedServerName
   455  	}
   456  	return nil
   457  }
   458  
   459  type isPermission_Rule interface {
   460  	isPermission_Rule()
   461  }
   462  
   463  type Permission_AndRules struct {
   464  	// A set of rules that all must match in order to define the action.
   465  	AndRules *Permission_Set `protobuf:"bytes,1,opt,name=and_rules,json=andRules,proto3,oneof"`
   466  }
   467  
   468  type Permission_OrRules struct {
   469  	// A set of rules where at least one must match in order to define the action.
   470  	OrRules *Permission_Set `protobuf:"bytes,2,opt,name=or_rules,json=orRules,proto3,oneof"`
   471  }
   472  
   473  type Permission_Any struct {
   474  	// When any is set, it matches any action.
   475  	Any bool `protobuf:"varint,3,opt,name=any,proto3,oneof"`
   476  }
   477  
   478  type Permission_Header struct {
   479  	// A header (or pseudo-header such as :path or :method) on the incoming HTTP request. Only
   480  	// available for HTTP request.
   481  	// Note: the pseudo-header :path includes the query and fragment string. Use the `url_path`
   482  	// field if you want to match the URL path without the query and fragment string.
   483  	Header *v4alpha.HeaderMatcher `protobuf:"bytes,4,opt,name=header,proto3,oneof"`
   484  }
   485  
   486  type Permission_UrlPath struct {
   487  	// A URL path on the incoming HTTP request. Only available for HTTP.
   488  	UrlPath *v4alpha1.PathMatcher `protobuf:"bytes,10,opt,name=url_path,json=urlPath,proto3,oneof"`
   489  }
   490  
   491  type Permission_DestinationIp struct {
   492  	// A CIDR block that describes the destination IP.
   493  	DestinationIp *v4alpha2.CidrRange `protobuf:"bytes,5,opt,name=destination_ip,json=destinationIp,proto3,oneof"`
   494  }
   495  
   496  type Permission_DestinationPort struct {
   497  	// A port number that describes the destination port connecting to.
   498  	DestinationPort uint32 `protobuf:"varint,6,opt,name=destination_port,json=destinationPort,proto3,oneof"`
   499  }
   500  
   501  type Permission_Metadata struct {
   502  	// Metadata that describes additional information about the action.
   503  	Metadata *v4alpha1.MetadataMatcher `protobuf:"bytes,7,opt,name=metadata,proto3,oneof"`
   504  }
   505  
   506  type Permission_NotRule struct {
   507  	// Negates matching the provided permission. For instance, if the value of
   508  	// `not_rule` would match, this permission would not match. Conversely, if
   509  	// the value of `not_rule` would not match, this permission would match.
   510  	NotRule *Permission `protobuf:"bytes,8,opt,name=not_rule,json=notRule,proto3,oneof"`
   511  }
   512  
   513  type Permission_RequestedServerName struct {
   514  	// The request server from the client's connection request. This is
   515  	// typically TLS SNI.
   516  	//
   517  	// .. attention::
   518  	//
   519  	//   The behavior of this field may be affected by how Envoy is configured
   520  	//   as explained below.
   521  	//
   522  	//   * If the :ref:`TLS Inspector <config_listener_filters_tls_inspector>`
   523  	//     filter is not added, and if a `FilterChainMatch` is not defined for
   524  	//     the :ref:`server name
   525  	//     <envoy_api_field_config.listener.v4alpha.FilterChainMatch.server_names>`,
   526  	//     a TLS connection's requested SNI server name will be treated as if it
   527  	//     wasn't present.
   528  	//
   529  	//   * A :ref:`listener filter <arch_overview_listener_filters>` may
   530  	//     overwrite a connection's requested server name within Envoy.
   531  	//
   532  	// Please refer to :ref:`this FAQ entry <faq_how_to_setup_sni>` to learn to
   533  	// setup SNI.
   534  	RequestedServerName *v4alpha1.StringMatcher `protobuf:"bytes,9,opt,name=requested_server_name,json=requestedServerName,proto3,oneof"`
   535  }
   536  
   537  func (*Permission_AndRules) isPermission_Rule() {}
   538  
   539  func (*Permission_OrRules) isPermission_Rule() {}
   540  
   541  func (*Permission_Any) isPermission_Rule() {}
   542  
   543  func (*Permission_Header) isPermission_Rule() {}
   544  
   545  func (*Permission_UrlPath) isPermission_Rule() {}
   546  
   547  func (*Permission_DestinationIp) isPermission_Rule() {}
   548  
   549  func (*Permission_DestinationPort) isPermission_Rule() {}
   550  
   551  func (*Permission_Metadata) isPermission_Rule() {}
   552  
   553  func (*Permission_NotRule) isPermission_Rule() {}
   554  
   555  func (*Permission_RequestedServerName) isPermission_Rule() {}
   556  
   557  // Principal defines an identity or a group of identities for a downstream
   558  // subject.
   559  // [#next-free-field: 12]
   560  type Principal struct {
   561  	state         protoimpl.MessageState
   562  	sizeCache     protoimpl.SizeCache
   563  	unknownFields protoimpl.UnknownFields
   564  
   565  	// Types that are assignable to Identifier:
   566  	//	*Principal_AndIds
   567  	//	*Principal_OrIds
   568  	//	*Principal_Any
   569  	//	*Principal_Authenticated_
   570  	//	*Principal_HiddenEnvoyDeprecatedSourceIp
   571  	//	*Principal_DirectRemoteIp
   572  	//	*Principal_RemoteIp
   573  	//	*Principal_Header
   574  	//	*Principal_UrlPath
   575  	//	*Principal_Metadata
   576  	//	*Principal_NotId
   577  	Identifier isPrincipal_Identifier `protobuf_oneof:"identifier"`
   578  }
   579  
   580  func (x *Principal) Reset() {
   581  	*x = Principal{}
   582  	if protoimpl.UnsafeEnabled {
   583  		mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[3]
   584  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   585  		ms.StoreMessageInfo(mi)
   586  	}
   587  }
   588  
   589  func (x *Principal) String() string {
   590  	return protoimpl.X.MessageStringOf(x)
   591  }
   592  
   593  func (*Principal) ProtoMessage() {}
   594  
   595  func (x *Principal) ProtoReflect() protoreflect.Message {
   596  	mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[3]
   597  	if protoimpl.UnsafeEnabled && x != nil {
   598  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   599  		if ms.LoadMessageInfo() == nil {
   600  			ms.StoreMessageInfo(mi)
   601  		}
   602  		return ms
   603  	}
   604  	return mi.MessageOf(x)
   605  }
   606  
   607  // Deprecated: Use Principal.ProtoReflect.Descriptor instead.
   608  func (*Principal) Descriptor() ([]byte, []int) {
   609  	return file_envoy_config_rbac_v4alpha_rbac_proto_rawDescGZIP(), []int{3}
   610  }
   611  
   612  func (m *Principal) GetIdentifier() isPrincipal_Identifier {
   613  	if m != nil {
   614  		return m.Identifier
   615  	}
   616  	return nil
   617  }
   618  
   619  func (x *Principal) GetAndIds() *Principal_Set {
   620  	if x, ok := x.GetIdentifier().(*Principal_AndIds); ok {
   621  		return x.AndIds
   622  	}
   623  	return nil
   624  }
   625  
   626  func (x *Principal) GetOrIds() *Principal_Set {
   627  	if x, ok := x.GetIdentifier().(*Principal_OrIds); ok {
   628  		return x.OrIds
   629  	}
   630  	return nil
   631  }
   632  
   633  func (x *Principal) GetAny() bool {
   634  	if x, ok := x.GetIdentifier().(*Principal_Any); ok {
   635  		return x.Any
   636  	}
   637  	return false
   638  }
   639  
   640  func (x *Principal) GetAuthenticated() *Principal_Authenticated {
   641  	if x, ok := x.GetIdentifier().(*Principal_Authenticated_); ok {
   642  		return x.Authenticated
   643  	}
   644  	return nil
   645  }
   646  
   647  // Deprecated: Do not use.
   648  func (x *Principal) GetHiddenEnvoyDeprecatedSourceIp() *v4alpha2.CidrRange {
   649  	if x, ok := x.GetIdentifier().(*Principal_HiddenEnvoyDeprecatedSourceIp); ok {
   650  		return x.HiddenEnvoyDeprecatedSourceIp
   651  	}
   652  	return nil
   653  }
   654  
   655  func (x *Principal) GetDirectRemoteIp() *v4alpha2.CidrRange {
   656  	if x, ok := x.GetIdentifier().(*Principal_DirectRemoteIp); ok {
   657  		return x.DirectRemoteIp
   658  	}
   659  	return nil
   660  }
   661  
   662  func (x *Principal) GetRemoteIp() *v4alpha2.CidrRange {
   663  	if x, ok := x.GetIdentifier().(*Principal_RemoteIp); ok {
   664  		return x.RemoteIp
   665  	}
   666  	return nil
   667  }
   668  
   669  func (x *Principal) GetHeader() *v4alpha.HeaderMatcher {
   670  	if x, ok := x.GetIdentifier().(*Principal_Header); ok {
   671  		return x.Header
   672  	}
   673  	return nil
   674  }
   675  
   676  func (x *Principal) GetUrlPath() *v4alpha1.PathMatcher {
   677  	if x, ok := x.GetIdentifier().(*Principal_UrlPath); ok {
   678  		return x.UrlPath
   679  	}
   680  	return nil
   681  }
   682  
   683  func (x *Principal) GetMetadata() *v4alpha1.MetadataMatcher {
   684  	if x, ok := x.GetIdentifier().(*Principal_Metadata); ok {
   685  		return x.Metadata
   686  	}
   687  	return nil
   688  }
   689  
   690  func (x *Principal) GetNotId() *Principal {
   691  	if x, ok := x.GetIdentifier().(*Principal_NotId); ok {
   692  		return x.NotId
   693  	}
   694  	return nil
   695  }
   696  
   697  type isPrincipal_Identifier interface {
   698  	isPrincipal_Identifier()
   699  }
   700  
   701  type Principal_AndIds struct {
   702  	// A set of identifiers that all must match in order to define the
   703  	// downstream.
   704  	AndIds *Principal_Set `protobuf:"bytes,1,opt,name=and_ids,json=andIds,proto3,oneof"`
   705  }
   706  
   707  type Principal_OrIds struct {
   708  	// A set of identifiers at least one must match in order to define the
   709  	// downstream.
   710  	OrIds *Principal_Set `protobuf:"bytes,2,opt,name=or_ids,json=orIds,proto3,oneof"`
   711  }
   712  
   713  type Principal_Any struct {
   714  	// When any is set, it matches any downstream.
   715  	Any bool `protobuf:"varint,3,opt,name=any,proto3,oneof"`
   716  }
   717  
   718  type Principal_Authenticated_ struct {
   719  	// Authenticated attributes that identify the downstream.
   720  	Authenticated *Principal_Authenticated `protobuf:"bytes,4,opt,name=authenticated,proto3,oneof"`
   721  }
   722  
   723  type Principal_HiddenEnvoyDeprecatedSourceIp struct {
   724  	// A CIDR block that describes the downstream IP.
   725  	// This address will honor proxy protocol, but will not honor XFF.
   726  	//
   727  	// Deprecated: Do not use.
   728  	HiddenEnvoyDeprecatedSourceIp *v4alpha2.CidrRange `protobuf:"bytes,5,opt,name=hidden_envoy_deprecated_source_ip,json=hiddenEnvoyDeprecatedSourceIp,proto3,oneof"`
   729  }
   730  
   731  type Principal_DirectRemoteIp struct {
   732  	// A CIDR block that describes the downstream remote/origin address.
   733  	// Note: This is always the physical peer even if the
   734  	// :ref:`remote_ip <envoy_api_field_config.rbac.v4alpha.Principal.remote_ip>` is
   735  	// inferred from for example the x-forwarder-for header, proxy protocol,
   736  	// etc.
   737  	DirectRemoteIp *v4alpha2.CidrRange `protobuf:"bytes,10,opt,name=direct_remote_ip,json=directRemoteIp,proto3,oneof"`
   738  }
   739  
   740  type Principal_RemoteIp struct {
   741  	// A CIDR block that describes the downstream remote/origin address.
   742  	// Note: This may not be the physical peer and could be different from the
   743  	// :ref:`direct_remote_ip
   744  	// <envoy_api_field_config.rbac.v4alpha.Principal.direct_remote_ip>`. E.g, if the
   745  	// remote ip is inferred from for example the x-forwarder-for header, proxy
   746  	// protocol, etc.
   747  	RemoteIp *v4alpha2.CidrRange `protobuf:"bytes,11,opt,name=remote_ip,json=remoteIp,proto3,oneof"`
   748  }
   749  
   750  type Principal_Header struct {
   751  	// A header (or pseudo-header such as :path or :method) on the incoming HTTP
   752  	// request. Only available for HTTP request. Note: the pseudo-header :path
   753  	// includes the query and fragment string. Use the `url_path` field if you
   754  	// want to match the URL path without the query and fragment string.
   755  	Header *v4alpha.HeaderMatcher `protobuf:"bytes,6,opt,name=header,proto3,oneof"`
   756  }
   757  
   758  type Principal_UrlPath struct {
   759  	// A URL path on the incoming HTTP request. Only available for HTTP.
   760  	UrlPath *v4alpha1.PathMatcher `protobuf:"bytes,9,opt,name=url_path,json=urlPath,proto3,oneof"`
   761  }
   762  
   763  type Principal_Metadata struct {
   764  	// Metadata that describes additional information about the principal.
   765  	Metadata *v4alpha1.MetadataMatcher `protobuf:"bytes,7,opt,name=metadata,proto3,oneof"`
   766  }
   767  
   768  type Principal_NotId struct {
   769  	// Negates matching the provided principal. For instance, if the value of
   770  	// `not_id` would match, this principal would not match. Conversely, if the
   771  	// value of `not_id` would not match, this principal would match.
   772  	NotId *Principal `protobuf:"bytes,8,opt,name=not_id,json=notId,proto3,oneof"`
   773  }
   774  
   775  func (*Principal_AndIds) isPrincipal_Identifier() {}
   776  
   777  func (*Principal_OrIds) isPrincipal_Identifier() {}
   778  
   779  func (*Principal_Any) isPrincipal_Identifier() {}
   780  
   781  func (*Principal_Authenticated_) isPrincipal_Identifier() {}
   782  
   783  func (*Principal_HiddenEnvoyDeprecatedSourceIp) isPrincipal_Identifier() {}
   784  
   785  func (*Principal_DirectRemoteIp) isPrincipal_Identifier() {}
   786  
   787  func (*Principal_RemoteIp) isPrincipal_Identifier() {}
   788  
   789  func (*Principal_Header) isPrincipal_Identifier() {}
   790  
   791  func (*Principal_UrlPath) isPrincipal_Identifier() {}
   792  
   793  func (*Principal_Metadata) isPrincipal_Identifier() {}
   794  
   795  func (*Principal_NotId) isPrincipal_Identifier() {}
   796  
   797  // Used in the `and_rules` and `or_rules` fields in the `rule` oneof. Depending on the context,
   798  // each are applied with the associated behavior.
   799  type Permission_Set struct {
   800  	state         protoimpl.MessageState
   801  	sizeCache     protoimpl.SizeCache
   802  	unknownFields protoimpl.UnknownFields
   803  
   804  	Rules []*Permission `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"`
   805  }
   806  
   807  func (x *Permission_Set) Reset() {
   808  	*x = Permission_Set{}
   809  	if protoimpl.UnsafeEnabled {
   810  		mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[5]
   811  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   812  		ms.StoreMessageInfo(mi)
   813  	}
   814  }
   815  
   816  func (x *Permission_Set) String() string {
   817  	return protoimpl.X.MessageStringOf(x)
   818  }
   819  
   820  func (*Permission_Set) ProtoMessage() {}
   821  
   822  func (x *Permission_Set) ProtoReflect() protoreflect.Message {
   823  	mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[5]
   824  	if protoimpl.UnsafeEnabled && x != nil {
   825  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   826  		if ms.LoadMessageInfo() == nil {
   827  			ms.StoreMessageInfo(mi)
   828  		}
   829  		return ms
   830  	}
   831  	return mi.MessageOf(x)
   832  }
   833  
   834  // Deprecated: Use Permission_Set.ProtoReflect.Descriptor instead.
   835  func (*Permission_Set) Descriptor() ([]byte, []int) {
   836  	return file_envoy_config_rbac_v4alpha_rbac_proto_rawDescGZIP(), []int{2, 0}
   837  }
   838  
   839  func (x *Permission_Set) GetRules() []*Permission {
   840  	if x != nil {
   841  		return x.Rules
   842  	}
   843  	return nil
   844  }
   845  
   846  // Used in the `and_ids` and `or_ids` fields in the `identifier` oneof.
   847  // Depending on the context, each are applied with the associated behavior.
   848  type Principal_Set struct {
   849  	state         protoimpl.MessageState
   850  	sizeCache     protoimpl.SizeCache
   851  	unknownFields protoimpl.UnknownFields
   852  
   853  	Ids []*Principal `protobuf:"bytes,1,rep,name=ids,proto3" json:"ids,omitempty"`
   854  }
   855  
   856  func (x *Principal_Set) Reset() {
   857  	*x = Principal_Set{}
   858  	if protoimpl.UnsafeEnabled {
   859  		mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[6]
   860  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   861  		ms.StoreMessageInfo(mi)
   862  	}
   863  }
   864  
   865  func (x *Principal_Set) String() string {
   866  	return protoimpl.X.MessageStringOf(x)
   867  }
   868  
   869  func (*Principal_Set) ProtoMessage() {}
   870  
   871  func (x *Principal_Set) ProtoReflect() protoreflect.Message {
   872  	mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[6]
   873  	if protoimpl.UnsafeEnabled && x != nil {
   874  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   875  		if ms.LoadMessageInfo() == nil {
   876  			ms.StoreMessageInfo(mi)
   877  		}
   878  		return ms
   879  	}
   880  	return mi.MessageOf(x)
   881  }
   882  
   883  // Deprecated: Use Principal_Set.ProtoReflect.Descriptor instead.
   884  func (*Principal_Set) Descriptor() ([]byte, []int) {
   885  	return file_envoy_config_rbac_v4alpha_rbac_proto_rawDescGZIP(), []int{3, 0}
   886  }
   887  
   888  func (x *Principal_Set) GetIds() []*Principal {
   889  	if x != nil {
   890  		return x.Ids
   891  	}
   892  	return nil
   893  }
   894  
   895  // Authentication attributes for a downstream.
   896  type Principal_Authenticated struct {
   897  	state         protoimpl.MessageState
   898  	sizeCache     protoimpl.SizeCache
   899  	unknownFields protoimpl.UnknownFields
   900  
   901  	// The name of the principal. If set, The URI SAN or DNS SAN in that order
   902  	// is used from the certificate, otherwise the subject field is used. If
   903  	// unset, it applies to any user that is authenticated.
   904  	PrincipalName *v4alpha1.StringMatcher `protobuf:"bytes,2,opt,name=principal_name,json=principalName,proto3" json:"principal_name,omitempty"`
   905  }
   906  
   907  func (x *Principal_Authenticated) Reset() {
   908  	*x = Principal_Authenticated{}
   909  	if protoimpl.UnsafeEnabled {
   910  		mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[7]
   911  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   912  		ms.StoreMessageInfo(mi)
   913  	}
   914  }
   915  
   916  func (x *Principal_Authenticated) String() string {
   917  	return protoimpl.X.MessageStringOf(x)
   918  }
   919  
   920  func (*Principal_Authenticated) ProtoMessage() {}
   921  
   922  func (x *Principal_Authenticated) ProtoReflect() protoreflect.Message {
   923  	mi := &file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[7]
   924  	if protoimpl.UnsafeEnabled && x != nil {
   925  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   926  		if ms.LoadMessageInfo() == nil {
   927  			ms.StoreMessageInfo(mi)
   928  		}
   929  		return ms
   930  	}
   931  	return mi.MessageOf(x)
   932  }
   933  
   934  // Deprecated: Use Principal_Authenticated.ProtoReflect.Descriptor instead.
   935  func (*Principal_Authenticated) Descriptor() ([]byte, []int) {
   936  	return file_envoy_config_rbac_v4alpha_rbac_proto_rawDescGZIP(), []int{3, 1}
   937  }
   938  
   939  func (x *Principal_Authenticated) GetPrincipalName() *v4alpha1.StringMatcher {
   940  	if x != nil {
   941  		return x.PrincipalName
   942  	}
   943  	return nil
   944  }
   945  
   946  var File_envoy_config_rbac_v4alpha_rbac_proto protoreflect.FileDescriptor
   947  
   948  var file_envoy_config_rbac_v4alpha_rbac_proto_rawDesc = []byte{
   949  	0x0a, 0x24, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x72,
   950  	0x62, 0x61, 0x63, 0x2f, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2f, 0x72, 0x62, 0x61, 0x63,
   951  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x19, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f,
   952  	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68,
   953  	0x61, 0x1a, 0x27, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f,
   954  	0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2f, 0x61, 0x64, 0x64,
   955  	0x72, 0x65, 0x73, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x65, 0x6e, 0x76, 0x6f,
   956  	0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2f, 0x76,
   957  	0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6d,
   958  	0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x29, 0x65,
   959  	0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65,
   960  	0x72, 0x2f, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
   961  	0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f,
   962  	0x74, 0x79, 0x70, 0x65, 0x2f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2f, 0x76, 0x34, 0x61,
   963  	0x6c, 0x70, 0x68, 0x61, 0x2f, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
   964  	0x27, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x6d, 0x61, 0x74, 0x63,
   965  	0x68, 0x65, 0x72, 0x2f, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2f, 0x73, 0x74, 0x72, 0x69,
   966  	0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x26, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
   967  	0x2f, 0x61, 0x70, 0x69, 0x2f, 0x65, 0x78, 0x70, 0x72, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
   968  	0x61, 0x31, 0x2f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
   969  	0x1a, 0x25, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x65, 0x78, 0x70,
   970  	0x72, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x73, 0x79, 0x6e, 0x74, 0x61,
   971  	0x78, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e,
   972  	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
   973  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e,
   974  	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
   975  	0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64,
   976  	0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f,
   977  	0x74, 0x6f, 0x22, 0xc5, 0x02, 0x0a, 0x04, 0x52, 0x42, 0x41, 0x43, 0x12, 0x48, 0x0a, 0x06, 0x61,
   978  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x65, 0x6e,
   979  	0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e,
   980  	0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x42, 0x41, 0x43, 0x2e, 0x41, 0x63, 0x74,
   981  	0x69, 0x6f, 0x6e, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x06, 0x61,
   982  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x49, 0x0a, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65,
   983  	0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
   984  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x34, 0x61, 0x6c,
   985  	0x70, 0x68, 0x61, 0x2e, 0x52, 0x42, 0x41, 0x43, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65,
   986  	0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73,
   987  	0x1a, 0x5e, 0x0a, 0x0d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72,
   988  	0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
   989  	0x6b, 0x65, 0x79, 0x12, 0x37, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
   990  	0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
   991  	0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x50,
   992  	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
   993  	0x22, 0x26, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x4c,
   994  	0x4c, 0x4f, 0x57, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x45, 0x4e, 0x59, 0x10, 0x01, 0x12,
   995  	0x07, 0x0a, 0x03, 0x4c, 0x4f, 0x47, 0x10, 0x02, 0x3a, 0x20, 0x9a, 0xc5, 0x88, 0x1e, 0x1b, 0x0a,
   996  	0x19, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62,
   997  	0x61, 0x63, 0x2e, 0x76, 0x33, 0x2e, 0x52, 0x42, 0x41, 0x43, 0x22, 0xfd, 0x02, 0x0a, 0x06, 0x50,
   998  	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x51, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
   999  	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x65, 0x6e, 0x76,
  1000  	0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76,
  1001  	0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f,
  1002  	0x6e, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x0b, 0x70, 0x65, 0x72,
  1003  	0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x6e,
  1004  	0x63, 0x69, 0x70, 0x61, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65,
  1005  	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63,
  1006  	0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70,
  1007  	0x61, 0x6c, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x0a, 0x70, 0x72,
  1008  	0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x73, 0x12, 0x3e, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x64,
  1009  	0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f,
  1010  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31,
  1011  	0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x09, 0x63,
  1012  	0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x54, 0x0a, 0x11, 0x63, 0x68, 0x65, 0x63,
  1013  	0x6b, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20,
  1014  	0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69,
  1015  	0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43,
  1016  	0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x10, 0x63, 0x68,
  1017  	0x65, 0x63, 0x6b, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x22,
  1018  	0x9a, 0xc5, 0x88, 0x1e, 0x1d, 0x0a, 0x1b, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e,
  1019  	0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x33, 0x2e, 0x50, 0x6f, 0x6c, 0x69,
  1020  	0x63, 0x79, 0x42, 0x16, 0x0a, 0x14, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
  1021  	0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x22, 0xec, 0x06, 0x0a, 0x0a, 0x50,
  1022  	0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x09, 0x61, 0x6e, 0x64,
  1023  	0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65,
  1024  	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63,
  1025  	0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
  1026  	0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x48, 0x00, 0x52, 0x08, 0x61, 0x6e, 0x64, 0x52, 0x75,
  1027  	0x6c, 0x65, 0x73, 0x12, 0x46, 0x0a, 0x08, 0x6f, 0x72, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18,
  1028  	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f,
  1029  	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68,
  1030  	0x61, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x74,
  1031  	0x48, 0x00, 0x52, 0x07, 0x6f, 0x72, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x03, 0x61,
  1032  	0x6e, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x6a, 0x02, 0x08,
  1033  	0x01, 0x48, 0x00, 0x52, 0x03, 0x61, 0x6e, 0x79, 0x12, 0x43, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64,
  1034  	0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
  1035  	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x76, 0x34,
  1036  	0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63,
  1037  	0x68, 0x65, 0x72, 0x48, 0x00, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x44, 0x0a,
  1038  	0x08, 0x75, 0x72, 0x6c, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32,
  1039  	0x27, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74,
  1040  	0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x50, 0x61, 0x74,
  1041  	0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x48, 0x00, 0x52, 0x07, 0x75, 0x72, 0x6c, 0x50,
  1042  	0x61, 0x74, 0x68, 0x12, 0x4d, 0x0a, 0x0e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
  1043  	0x6f, 0x6e, 0x5f, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e,
  1044  	0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
  1045  	0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x43, 0x69, 0x64, 0x72, 0x52, 0x61, 0x6e, 0x67,
  1046  	0x65, 0x48, 0x00, 0x52, 0x0d, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  1047  	0x49, 0x70, 0x12, 0x36, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
  1048  	0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x09, 0xfa, 0x42,
  1049  	0x06, 0x2a, 0x04, 0x18, 0xff, 0xff, 0x03, 0x48, 0x00, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69,
  1050  	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x49, 0x0a, 0x08, 0x6d, 0x65,
  1051  	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x65,
  1052  	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65,
  1053  	0x72, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
  1054  	0x74, 0x61, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74,
  1055  	0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x42, 0x0a, 0x08, 0x6e, 0x6f, 0x74, 0x5f, 0x72, 0x75, 0x6c,
  1056  	0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
  1057  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x34, 0x61, 0x6c,
  1058  	0x70, 0x68, 0x61, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x00,
  1059  	0x52, 0x07, 0x6e, 0x6f, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x5f, 0x0a, 0x15, 0x72, 0x65, 0x71,
  1060  	0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6e, 0x61,
  1061  	0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
  1062  	0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x34,
  1063  	0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63,
  1064  	0x68, 0x65, 0x72, 0x48, 0x00, 0x52, 0x13, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64,
  1065  	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x78, 0x0a, 0x03, 0x53, 0x65,
  1066  	0x74, 0x12, 0x45, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
  1067  	0x32, 0x25, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
  1068  	0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x50, 0x65, 0x72,
  1069  	0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x08,
  1070  	0x01, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x3a, 0x2a, 0x9a, 0xc5, 0x88, 0x1e, 0x25, 0x0a,
  1071  	0x23, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62,
  1072  	0x61, 0x63, 0x2e, 0x76, 0x33, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
  1073  	0x2e, 0x53, 0x65, 0x74, 0x3a, 0x26, 0x9a, 0xc5, 0x88, 0x1e, 0x21, 0x0a, 0x1f, 0x65, 0x6e, 0x76,
  1074  	0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76,
  1075  	0x33, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x0b, 0x0a, 0x04,
  1076  	0x72, 0x75, 0x6c, 0x65, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0xfb, 0x08, 0x0a, 0x09, 0x50, 0x72,
  1077  	0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x12, 0x43, 0x0a, 0x07, 0x61, 0x6e, 0x64, 0x5f, 0x69,
  1078  	0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
  1079  	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x34, 0x61,
  1080  	0x6c, 0x70, 0x68, 0x61, 0x2e, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x2e, 0x53,
  1081  	0x65, 0x74, 0x48, 0x00, 0x52, 0x06, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x73, 0x12, 0x41, 0x0a, 0x06,
  1082  	0x6f, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x65,
  1083  	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63,
  1084  	0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70,
  1085  	0x61, 0x6c, 0x2e, 0x53, 0x65, 0x74, 0x48, 0x00, 0x52, 0x05, 0x6f, 0x72, 0x49, 0x64, 0x73, 0x12,
  1086  	0x1b, 0x0a, 0x03, 0x61, 0x6e, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x07, 0xfa, 0x42,
  1087  	0x04, 0x6a, 0x02, 0x08, 0x01, 0x48, 0x00, 0x52, 0x03, 0x61, 0x6e, 0x79, 0x12, 0x5a, 0x0a, 0x0d,
  1088  	0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20,
  1089  	0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
  1090  	0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e,
  1091  	0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e,
  1092  	0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x65,
  1093  	0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x74, 0x0a, 0x21, 0x68, 0x69, 0x64, 0x64,
  1094  	0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x5f, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61,
  1095  	0x74, 0x65, 0x64, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x70, 0x18, 0x05, 0x20,
  1096  	0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
  1097  	0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e,
  1098  	0x43, 0x69, 0x64, 0x72, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x42, 0x02, 0x18, 0x01, 0x48, 0x00, 0x52,
  1099  	0x1d, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x45, 0x6e, 0x76, 0x6f, 0x79, 0x44, 0x65, 0x70, 0x72,
  1100  	0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x70, 0x12, 0x50,
  1101  	0x0a, 0x10, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f,
  1102  	0x69, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
  1103  	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x34, 0x61,
  1104  	0x6c, 0x70, 0x68, 0x61, 0x2e, 0x43, 0x69, 0x64, 0x72, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x48, 0x00,
  1105  	0x52, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x70,
  1106  	0x12, 0x43, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70, 0x18, 0x0b, 0x20,
  1107  	0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
  1108  	0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e,
  1109  	0x43, 0x69, 0x64, 0x72, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x6d,
  1110  	0x6f, 0x74, 0x65, 0x49, 0x70, 0x12, 0x43, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18,
  1111  	0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f,
  1112  	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70,
  1113  	0x68, 0x61, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72,
  1114  	0x48, 0x00, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x44, 0x0a, 0x08, 0x75, 0x72,
  1115  	0x6c, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x65,
  1116  	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65,
  1117  	0x72, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x50, 0x61, 0x74, 0x68, 0x4d, 0x61,
  1118  	0x74, 0x63, 0x68, 0x65, 0x72, 0x48, 0x00, 0x52, 0x07, 0x75, 0x72, 0x6c, 0x50, 0x61, 0x74, 0x68,
  1119  	0x12, 0x49, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01,
  1120  	0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e,
  1121  	0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e,
  1122  	0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x48,
  1123  	0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3d, 0x0a, 0x06, 0x6e,
  1124  	0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e,
  1125  	0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e,
  1126  	0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61,
  1127  	0x6c, 0x48, 0x00, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49, 0x64, 0x1a, 0x72, 0x0a, 0x03, 0x53, 0x65,
  1128  	0x74, 0x12, 0x40, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24,
  1129  	0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62,
  1130  	0x61, 0x63, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x50, 0x72, 0x69, 0x6e, 0x63,
  1131  	0x69, 0x70, 0x61, 0x6c, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x03,
  1132  	0x69, 0x64, 0x73, 0x3a, 0x29, 0x9a, 0xc5, 0x88, 0x1e, 0x24, 0x0a, 0x22, 0x65, 0x6e, 0x76, 0x6f,
  1133  	0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x33,
  1134  	0x2e, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x2e, 0x53, 0x65, 0x74, 0x1a, 0x9c,
  1135  	0x01, 0x0a, 0x0d, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64,
  1136  	0x12, 0x50, 0x0a, 0x0e, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x5f, 0x6e, 0x61,
  1137  	0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
  1138  	0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x34,
  1139  	0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63,
  1140  	0x68, 0x65, 0x72, 0x52, 0x0d, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x4e, 0x61,
  1141  	0x6d, 0x65, 0x3a, 0x33, 0x9a, 0xc5, 0x88, 0x1e, 0x2e, 0x0a, 0x2c, 0x65, 0x6e, 0x76, 0x6f, 0x79,
  1142  	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x33, 0x2e,
  1143  	0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e,
  1144  	0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x3a, 0x25, 0x9a,
  1145  	0xc5, 0x88, 0x1e, 0x20, 0x0a, 0x1e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
  1146  	0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x33, 0x2e, 0x50, 0x72, 0x69, 0x6e, 0x63,
  1147  	0x69, 0x70, 0x61, 0x6c, 0x42, 0x11, 0x0a, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69,
  1148  	0x65, 0x72, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x42, 0x3e, 0x0a, 0x27, 0x69, 0x6f, 0x2e, 0x65, 0x6e,
  1149  	0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63,
  1150  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70,
  1151  	0x68, 0x61, 0x42, 0x09, 0x52, 0x62, 0x61, 0x63, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xba,
  1152  	0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x03, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  1153  }
  1154  
  1155  var (
  1156  	file_envoy_config_rbac_v4alpha_rbac_proto_rawDescOnce sync.Once
  1157  	file_envoy_config_rbac_v4alpha_rbac_proto_rawDescData = file_envoy_config_rbac_v4alpha_rbac_proto_rawDesc
  1158  )
  1159  
  1160  func file_envoy_config_rbac_v4alpha_rbac_proto_rawDescGZIP() []byte {
  1161  	file_envoy_config_rbac_v4alpha_rbac_proto_rawDescOnce.Do(func() {
  1162  		file_envoy_config_rbac_v4alpha_rbac_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_config_rbac_v4alpha_rbac_proto_rawDescData)
  1163  	})
  1164  	return file_envoy_config_rbac_v4alpha_rbac_proto_rawDescData
  1165  }
  1166  
  1167  var file_envoy_config_rbac_v4alpha_rbac_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
  1168  var file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
  1169  var file_envoy_config_rbac_v4alpha_rbac_proto_goTypes = []interface{}{
  1170  	(RBAC_Action)(0),                 // 0: envoy.config.rbac.v4alpha.RBAC.Action
  1171  	(*RBAC)(nil),                     // 1: envoy.config.rbac.v4alpha.RBAC
  1172  	(*Policy)(nil),                   // 2: envoy.config.rbac.v4alpha.Policy
  1173  	(*Permission)(nil),               // 3: envoy.config.rbac.v4alpha.Permission
  1174  	(*Principal)(nil),                // 4: envoy.config.rbac.v4alpha.Principal
  1175  	nil,                              // 5: envoy.config.rbac.v4alpha.RBAC.PoliciesEntry
  1176  	(*Permission_Set)(nil),           // 6: envoy.config.rbac.v4alpha.Permission.Set
  1177  	(*Principal_Set)(nil),            // 7: envoy.config.rbac.v4alpha.Principal.Set
  1178  	(*Principal_Authenticated)(nil),  // 8: envoy.config.rbac.v4alpha.Principal.Authenticated
  1179  	(*v1alpha1.Expr)(nil),            // 9: google.api.expr.v1alpha1.Expr
  1180  	(*v1alpha1.CheckedExpr)(nil),     // 10: google.api.expr.v1alpha1.CheckedExpr
  1181  	(*v4alpha.HeaderMatcher)(nil),    // 11: envoy.config.route.v4alpha.HeaderMatcher
  1182  	(*v4alpha1.PathMatcher)(nil),     // 12: envoy.type.matcher.v4alpha.PathMatcher
  1183  	(*v4alpha2.CidrRange)(nil),       // 13: envoy.config.core.v4alpha.CidrRange
  1184  	(*v4alpha1.MetadataMatcher)(nil), // 14: envoy.type.matcher.v4alpha.MetadataMatcher
  1185  	(*v4alpha1.StringMatcher)(nil),   // 15: envoy.type.matcher.v4alpha.StringMatcher
  1186  }
  1187  var file_envoy_config_rbac_v4alpha_rbac_proto_depIdxs = []int32{
  1188  	0,  // 0: envoy.config.rbac.v4alpha.RBAC.action:type_name -> envoy.config.rbac.v4alpha.RBAC.Action
  1189  	5,  // 1: envoy.config.rbac.v4alpha.RBAC.policies:type_name -> envoy.config.rbac.v4alpha.RBAC.PoliciesEntry
  1190  	3,  // 2: envoy.config.rbac.v4alpha.Policy.permissions:type_name -> envoy.config.rbac.v4alpha.Permission
  1191  	4,  // 3: envoy.config.rbac.v4alpha.Policy.principals:type_name -> envoy.config.rbac.v4alpha.Principal
  1192  	9,  // 4: envoy.config.rbac.v4alpha.Policy.condition:type_name -> google.api.expr.v1alpha1.Expr
  1193  	10, // 5: envoy.config.rbac.v4alpha.Policy.checked_condition:type_name -> google.api.expr.v1alpha1.CheckedExpr
  1194  	6,  // 6: envoy.config.rbac.v4alpha.Permission.and_rules:type_name -> envoy.config.rbac.v4alpha.Permission.Set
  1195  	6,  // 7: envoy.config.rbac.v4alpha.Permission.or_rules:type_name -> envoy.config.rbac.v4alpha.Permission.Set
  1196  	11, // 8: envoy.config.rbac.v4alpha.Permission.header:type_name -> envoy.config.route.v4alpha.HeaderMatcher
  1197  	12, // 9: envoy.config.rbac.v4alpha.Permission.url_path:type_name -> envoy.type.matcher.v4alpha.PathMatcher
  1198  	13, // 10: envoy.config.rbac.v4alpha.Permission.destination_ip:type_name -> envoy.config.core.v4alpha.CidrRange
  1199  	14, // 11: envoy.config.rbac.v4alpha.Permission.metadata:type_name -> envoy.type.matcher.v4alpha.MetadataMatcher
  1200  	3,  // 12: envoy.config.rbac.v4alpha.Permission.not_rule:type_name -> envoy.config.rbac.v4alpha.Permission
  1201  	15, // 13: envoy.config.rbac.v4alpha.Permission.requested_server_name:type_name -> envoy.type.matcher.v4alpha.StringMatcher
  1202  	7,  // 14: envoy.config.rbac.v4alpha.Principal.and_ids:type_name -> envoy.config.rbac.v4alpha.Principal.Set
  1203  	7,  // 15: envoy.config.rbac.v4alpha.Principal.or_ids:type_name -> envoy.config.rbac.v4alpha.Principal.Set
  1204  	8,  // 16: envoy.config.rbac.v4alpha.Principal.authenticated:type_name -> envoy.config.rbac.v4alpha.Principal.Authenticated
  1205  	13, // 17: envoy.config.rbac.v4alpha.Principal.hidden_envoy_deprecated_source_ip:type_name -> envoy.config.core.v4alpha.CidrRange
  1206  	13, // 18: envoy.config.rbac.v4alpha.Principal.direct_remote_ip:type_name -> envoy.config.core.v4alpha.CidrRange
  1207  	13, // 19: envoy.config.rbac.v4alpha.Principal.remote_ip:type_name -> envoy.config.core.v4alpha.CidrRange
  1208  	11, // 20: envoy.config.rbac.v4alpha.Principal.header:type_name -> envoy.config.route.v4alpha.HeaderMatcher
  1209  	12, // 21: envoy.config.rbac.v4alpha.Principal.url_path:type_name -> envoy.type.matcher.v4alpha.PathMatcher
  1210  	14, // 22: envoy.config.rbac.v4alpha.Principal.metadata:type_name -> envoy.type.matcher.v4alpha.MetadataMatcher
  1211  	4,  // 23: envoy.config.rbac.v4alpha.Principal.not_id:type_name -> envoy.config.rbac.v4alpha.Principal
  1212  	2,  // 24: envoy.config.rbac.v4alpha.RBAC.PoliciesEntry.value:type_name -> envoy.config.rbac.v4alpha.Policy
  1213  	3,  // 25: envoy.config.rbac.v4alpha.Permission.Set.rules:type_name -> envoy.config.rbac.v4alpha.Permission
  1214  	4,  // 26: envoy.config.rbac.v4alpha.Principal.Set.ids:type_name -> envoy.config.rbac.v4alpha.Principal
  1215  	15, // 27: envoy.config.rbac.v4alpha.Principal.Authenticated.principal_name:type_name -> envoy.type.matcher.v4alpha.StringMatcher
  1216  	28, // [28:28] is the sub-list for method output_type
  1217  	28, // [28:28] is the sub-list for method input_type
  1218  	28, // [28:28] is the sub-list for extension type_name
  1219  	28, // [28:28] is the sub-list for extension extendee
  1220  	0,  // [0:28] is the sub-list for field type_name
  1221  }
  1222  
  1223  func init() { file_envoy_config_rbac_v4alpha_rbac_proto_init() }
  1224  func file_envoy_config_rbac_v4alpha_rbac_proto_init() {
  1225  	if File_envoy_config_rbac_v4alpha_rbac_proto != nil {
  1226  		return
  1227  	}
  1228  	if !protoimpl.UnsafeEnabled {
  1229  		file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1230  			switch v := v.(*RBAC); i {
  1231  			case 0:
  1232  				return &v.state
  1233  			case 1:
  1234  				return &v.sizeCache
  1235  			case 2:
  1236  				return &v.unknownFields
  1237  			default:
  1238  				return nil
  1239  			}
  1240  		}
  1241  		file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1242  			switch v := v.(*Policy); i {
  1243  			case 0:
  1244  				return &v.state
  1245  			case 1:
  1246  				return &v.sizeCache
  1247  			case 2:
  1248  				return &v.unknownFields
  1249  			default:
  1250  				return nil
  1251  			}
  1252  		}
  1253  		file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1254  			switch v := v.(*Permission); i {
  1255  			case 0:
  1256  				return &v.state
  1257  			case 1:
  1258  				return &v.sizeCache
  1259  			case 2:
  1260  				return &v.unknownFields
  1261  			default:
  1262  				return nil
  1263  			}
  1264  		}
  1265  		file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1266  			switch v := v.(*Principal); i {
  1267  			case 0:
  1268  				return &v.state
  1269  			case 1:
  1270  				return &v.sizeCache
  1271  			case 2:
  1272  				return &v.unknownFields
  1273  			default:
  1274  				return nil
  1275  			}
  1276  		}
  1277  		file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1278  			switch v := v.(*Permission_Set); i {
  1279  			case 0:
  1280  				return &v.state
  1281  			case 1:
  1282  				return &v.sizeCache
  1283  			case 2:
  1284  				return &v.unknownFields
  1285  			default:
  1286  				return nil
  1287  			}
  1288  		}
  1289  		file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1290  			switch v := v.(*Principal_Set); i {
  1291  			case 0:
  1292  				return &v.state
  1293  			case 1:
  1294  				return &v.sizeCache
  1295  			case 2:
  1296  				return &v.unknownFields
  1297  			default:
  1298  				return nil
  1299  			}
  1300  		}
  1301  		file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1302  			switch v := v.(*Principal_Authenticated); i {
  1303  			case 0:
  1304  				return &v.state
  1305  			case 1:
  1306  				return &v.sizeCache
  1307  			case 2:
  1308  				return &v.unknownFields
  1309  			default:
  1310  				return nil
  1311  			}
  1312  		}
  1313  	}
  1314  	file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[1].OneofWrappers = []interface{}{
  1315  		(*Policy_Condition)(nil),
  1316  		(*Policy_CheckedCondition)(nil),
  1317  	}
  1318  	file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[2].OneofWrappers = []interface{}{
  1319  		(*Permission_AndRules)(nil),
  1320  		(*Permission_OrRules)(nil),
  1321  		(*Permission_Any)(nil),
  1322  		(*Permission_Header)(nil),
  1323  		(*Permission_UrlPath)(nil),
  1324  		(*Permission_DestinationIp)(nil),
  1325  		(*Permission_DestinationPort)(nil),
  1326  		(*Permission_Metadata)(nil),
  1327  		(*Permission_NotRule)(nil),
  1328  		(*Permission_RequestedServerName)(nil),
  1329  	}
  1330  	file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes[3].OneofWrappers = []interface{}{
  1331  		(*Principal_AndIds)(nil),
  1332  		(*Principal_OrIds)(nil),
  1333  		(*Principal_Any)(nil),
  1334  		(*Principal_Authenticated_)(nil),
  1335  		(*Principal_HiddenEnvoyDeprecatedSourceIp)(nil),
  1336  		(*Principal_DirectRemoteIp)(nil),
  1337  		(*Principal_RemoteIp)(nil),
  1338  		(*Principal_Header)(nil),
  1339  		(*Principal_UrlPath)(nil),
  1340  		(*Principal_Metadata)(nil),
  1341  		(*Principal_NotId)(nil),
  1342  	}
  1343  	type x struct{}
  1344  	out := protoimpl.TypeBuilder{
  1345  		File: protoimpl.DescBuilder{
  1346  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1347  			RawDescriptor: file_envoy_config_rbac_v4alpha_rbac_proto_rawDesc,
  1348  			NumEnums:      1,
  1349  			NumMessages:   8,
  1350  			NumExtensions: 0,
  1351  			NumServices:   0,
  1352  		},
  1353  		GoTypes:           file_envoy_config_rbac_v4alpha_rbac_proto_goTypes,
  1354  		DependencyIndexes: file_envoy_config_rbac_v4alpha_rbac_proto_depIdxs,
  1355  		EnumInfos:         file_envoy_config_rbac_v4alpha_rbac_proto_enumTypes,
  1356  		MessageInfos:      file_envoy_config_rbac_v4alpha_rbac_proto_msgTypes,
  1357  	}.Build()
  1358  	File_envoy_config_rbac_v4alpha_rbac_proto = out.File
  1359  	file_envoy_config_rbac_v4alpha_rbac_proto_rawDesc = nil
  1360  	file_envoy_config_rbac_v4alpha_rbac_proto_goTypes = nil
  1361  	file_envoy_config_rbac_v4alpha_rbac_proto_depIdxs = nil
  1362  }
  1363  

View as plain text