// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: envoy/config/rbac/v2/rbac.proto
package io.envoyproxy.envoy.config.rbac.v2;
public interface PrincipalOrBuilder extends
// @@protoc_insertion_point(interface_extends:envoy.config.rbac.v2.Principal)
com.google.protobuf.MessageOrBuilder {
/**
*
* A set of identifiers that all must match in order to define the downstream.
*
*
* .envoy.config.rbac.v2.Principal.Set and_ids = 1;
* @return Whether the andIds field is set.
*/
boolean hasAndIds();
/**
*
* A set of identifiers that all must match in order to define the downstream.
*
*
* .envoy.config.rbac.v2.Principal.Set and_ids = 1;
* @return The andIds.
*/
io.envoyproxy.envoy.config.rbac.v2.Principal.Set getAndIds();
/**
*
* A set of identifiers that all must match in order to define the downstream.
*
*
* .envoy.config.rbac.v2.Principal.Set and_ids = 1;
*/
io.envoyproxy.envoy.config.rbac.v2.Principal.SetOrBuilder getAndIdsOrBuilder();
/**
*
* A set of identifiers at least one must match in order to define the downstream.
*
*
* .envoy.config.rbac.v2.Principal.Set or_ids = 2;
* @return Whether the orIds field is set.
*/
boolean hasOrIds();
/**
*
* A set of identifiers at least one must match in order to define the downstream.
*
*
* .envoy.config.rbac.v2.Principal.Set or_ids = 2;
* @return The orIds.
*/
io.envoyproxy.envoy.config.rbac.v2.Principal.Set getOrIds();
/**
*
* A set of identifiers at least one must match in order to define the downstream.
*
*
* .envoy.config.rbac.v2.Principal.Set or_ids = 2;
*/
io.envoyproxy.envoy.config.rbac.v2.Principal.SetOrBuilder getOrIdsOrBuilder();
/**
*
* When any is set, it matches any downstream.
*
*
* bool any = 3 [(.validate.rules) = { ... }
* @return Whether the any field is set.
*/
boolean hasAny();
/**
*
* When any is set, it matches any downstream.
*
*
* bool any = 3 [(.validate.rules) = { ... }
* @return The any.
*/
boolean getAny();
/**
*
* Authenticated attributes that identify the downstream.
*
*
* .envoy.config.rbac.v2.Principal.Authenticated authenticated = 4;
* @return Whether the authenticated field is set.
*/
boolean hasAuthenticated();
/**
*
* Authenticated attributes that identify the downstream.
*
*
* .envoy.config.rbac.v2.Principal.Authenticated authenticated = 4;
* @return The authenticated.
*/
io.envoyproxy.envoy.config.rbac.v2.Principal.Authenticated getAuthenticated();
/**
*
* Authenticated attributes that identify the downstream.
*
*
* .envoy.config.rbac.v2.Principal.Authenticated authenticated = 4;
*/
io.envoyproxy.envoy.config.rbac.v2.Principal.AuthenticatedOrBuilder getAuthenticatedOrBuilder();
/**
*
* A CIDR block that describes the downstream IP.
* This address will honor proxy protocol, but will not honor XFF.
*
*
* .envoy.api.v2.core.CidrRange source_ip = 5 [deprecated = true];
* @deprecated envoy.config.rbac.v2.Principal.source_ip is deprecated.
* See envoy/config/rbac/v2/rbac.proto;l=208
* @return Whether the sourceIp field is set.
*/
@java.lang.Deprecated boolean hasSourceIp();
/**
*
* A CIDR block that describes the downstream IP.
* This address will honor proxy protocol, but will not honor XFF.
*
*
* .envoy.api.v2.core.CidrRange source_ip = 5 [deprecated = true];
* @deprecated envoy.config.rbac.v2.Principal.source_ip is deprecated.
* See envoy/config/rbac/v2/rbac.proto;l=208
* @return The sourceIp.
*/
@java.lang.Deprecated io.envoyproxy.envoy.api.v2.core.CidrRange getSourceIp();
/**
*
* A CIDR block that describes the downstream IP.
* This address will honor proxy protocol, but will not honor XFF.
*
*
* .envoy.api.v2.core.CidrRange source_ip = 5 [deprecated = true];
*/
@java.lang.Deprecated io.envoyproxy.envoy.api.v2.core.CidrRangeOrBuilder getSourceIpOrBuilder();
/**
*
* A CIDR block that describes the downstream remote/origin address.
* Note: This is always the physical peer even if the
* :ref:`remote_ip <envoy_api_field_config.rbac.v2.Principal.remote_ip>` is inferred
* from for example the x-forwarder-for header, proxy protocol, etc.
*
*
* .envoy.api.v2.core.CidrRange direct_remote_ip = 10;
* @return Whether the directRemoteIp field is set.
*/
boolean hasDirectRemoteIp();
/**
*
* A CIDR block that describes the downstream remote/origin address.
* Note: This is always the physical peer even if the
* :ref:`remote_ip <envoy_api_field_config.rbac.v2.Principal.remote_ip>` is inferred
* from for example the x-forwarder-for header, proxy protocol, etc.
*
*
* .envoy.api.v2.core.CidrRange direct_remote_ip = 10;
* @return The directRemoteIp.
*/
io.envoyproxy.envoy.api.v2.core.CidrRange getDirectRemoteIp();
/**
*
* A CIDR block that describes the downstream remote/origin address.
* Note: This is always the physical peer even if the
* :ref:`remote_ip <envoy_api_field_config.rbac.v2.Principal.remote_ip>` is inferred
* from for example the x-forwarder-for header, proxy protocol, etc.
*
*
* .envoy.api.v2.core.CidrRange direct_remote_ip = 10;
*/
io.envoyproxy.envoy.api.v2.core.CidrRangeOrBuilder getDirectRemoteIpOrBuilder();
/**
*
* A CIDR block that describes the downstream remote/origin address.
* Note: This may not be the physical peer and could be different from the
* :ref:`direct_remote_ip <envoy_api_field_config.rbac.v2.Principal.direct_remote_ip>`.
* E.g, if the remote ip is inferred from for example the x-forwarder-for header,
* proxy protocol, etc.
*
*
* .envoy.api.v2.core.CidrRange remote_ip = 11;
* @return Whether the remoteIp field is set.
*/
boolean hasRemoteIp();
/**
*
* A CIDR block that describes the downstream remote/origin address.
* Note: This may not be the physical peer and could be different from the
* :ref:`direct_remote_ip <envoy_api_field_config.rbac.v2.Principal.direct_remote_ip>`.
* E.g, if the remote ip is inferred from for example the x-forwarder-for header,
* proxy protocol, etc.
*
*
* .envoy.api.v2.core.CidrRange remote_ip = 11;
* @return The remoteIp.
*/
io.envoyproxy.envoy.api.v2.core.CidrRange getRemoteIp();
/**
*
* A CIDR block that describes the downstream remote/origin address.
* Note: This may not be the physical peer and could be different from the
* :ref:`direct_remote_ip <envoy_api_field_config.rbac.v2.Principal.direct_remote_ip>`.
* E.g, if the remote ip is inferred from for example the x-forwarder-for header,
* proxy protocol, etc.
*
*
* .envoy.api.v2.core.CidrRange remote_ip = 11;
*/
io.envoyproxy.envoy.api.v2.core.CidrRangeOrBuilder getRemoteIpOrBuilder();
/**
*
* A header (or pseudo-header such as :path or :method) on the incoming HTTP request. Only
* available for HTTP request.
* Note: the pseudo-header :path includes the query and fragment string. Use the `url_path`
* field if you want to match the URL path without the query and fragment string.
*
*
* .envoy.api.v2.route.HeaderMatcher header = 6;
* @return Whether the header field is set.
*/
boolean hasHeader();
/**
*
* A header (or pseudo-header such as :path or :method) on the incoming HTTP request. Only
* available for HTTP request.
* Note: the pseudo-header :path includes the query and fragment string. Use the `url_path`
* field if you want to match the URL path without the query and fragment string.
*
*
* .envoy.api.v2.route.HeaderMatcher header = 6;
* @return The header.
*/
io.envoyproxy.envoy.api.v2.route.HeaderMatcher getHeader();
/**
*
* A header (or pseudo-header such as :path or :method) on the incoming HTTP request. Only
* available for HTTP request.
* Note: the pseudo-header :path includes the query and fragment string. Use the `url_path`
* field if you want to match the URL path without the query and fragment string.
*
*
* .envoy.api.v2.route.HeaderMatcher header = 6;
*/
io.envoyproxy.envoy.api.v2.route.HeaderMatcherOrBuilder getHeaderOrBuilder();
/**
*
* A URL path on the incoming HTTP request. Only available for HTTP.
*
*
* .envoy.type.matcher.PathMatcher url_path = 9;
* @return Whether the urlPath field is set.
*/
boolean hasUrlPath();
/**
*
* A URL path on the incoming HTTP request. Only available for HTTP.
*
*
* .envoy.type.matcher.PathMatcher url_path = 9;
* @return The urlPath.
*/
io.envoyproxy.envoy.type.matcher.PathMatcher getUrlPath();
/**
*
* A URL path on the incoming HTTP request. Only available for HTTP.
*
*
* .envoy.type.matcher.PathMatcher url_path = 9;
*/
io.envoyproxy.envoy.type.matcher.PathMatcherOrBuilder getUrlPathOrBuilder();
/**
*
* Metadata that describes additional information about the principal.
*
*
* .envoy.type.matcher.MetadataMatcher metadata = 7;
* @return Whether the metadata field is set.
*/
boolean hasMetadata();
/**
*
* Metadata that describes additional information about the principal.
*
*
* .envoy.type.matcher.MetadataMatcher metadata = 7;
* @return The metadata.
*/
io.envoyproxy.envoy.type.matcher.MetadataMatcher getMetadata();
/**
*
* Metadata that describes additional information about the principal.
*
*
* .envoy.type.matcher.MetadataMatcher metadata = 7;
*/
io.envoyproxy.envoy.type.matcher.MetadataMatcherOrBuilder getMetadataOrBuilder();
/**
*
* Negates matching the provided principal. For instance, if the value of `not_id` would match,
* this principal would not match. Conversely, if the value of `not_id` would not match, this
* principal would match.
*
*
* .envoy.config.rbac.v2.Principal not_id = 8;
* @return Whether the notId field is set.
*/
boolean hasNotId();
/**
*
* Negates matching the provided principal. For instance, if the value of `not_id` would match,
* this principal would not match. Conversely, if the value of `not_id` would not match, this
* principal would match.
*
*
* .envoy.config.rbac.v2.Principal not_id = 8;
* @return The notId.
*/
io.envoyproxy.envoy.config.rbac.v2.Principal getNotId();
/**
*
* Negates matching the provided principal. For instance, if the value of `not_id` would match,
* this principal would not match. Conversely, if the value of `not_id` would not match, this
* principal would match.
*
*
* .envoy.config.rbac.v2.Principal not_id = 8;
*/
io.envoyproxy.envoy.config.rbac.v2.PrincipalOrBuilder getNotIdOrBuilder();
public io.envoyproxy.envoy.config.rbac.v2.Principal.IdentifierCase getIdentifierCase();
}