Class Principal

  • All Implemented Interfaces:
    com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, PrincipalOrBuilder, java.io.Serializable

    public final class Principal
    extends com.google.protobuf.GeneratedMessage
    implements PrincipalOrBuilder
     Principal defines an identity or a group of identities for a downstream
     subject.
     [#next-free-field: 13]
     
    Protobuf type envoy.config.rbac.v3.Principal
    See Also:
    Serialized Form
    • Field Detail

      • identifierCase_

        private int identifierCase_
      • identifier_

        private java.lang.Object identifier_
      • AUTHENTICATED_FIELD_NUMBER

        public static final int AUTHENTICATED_FIELD_NUMBER
        See Also:
        Constant Field Values
      • DIRECT_REMOTE_IP_FIELD_NUMBER

        public static final int DIRECT_REMOTE_IP_FIELD_NUMBER
        See Also:
        Constant Field Values
      • FILTER_STATE_FIELD_NUMBER

        public static final int FILTER_STATE_FIELD_NUMBER
        See Also:
        Constant Field Values
      • memoizedIsInitialized

        private byte memoizedIsInitialized
      • DEFAULT_INSTANCE

        private static final Principal DEFAULT_INSTANCE
      • PARSER

        private static final com.google.protobuf.Parser<Principal> PARSER
    • Constructor Detail

      • Principal

        private Principal​(com.google.protobuf.GeneratedMessage.Builder<?> builder)
      • Principal

        private Principal()
    • Method Detail

      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
      • hasAndIds

        public boolean hasAndIds()
         A set of identifiers that all must match in order to define the
         downstream.
         
        .envoy.config.rbac.v3.Principal.Set and_ids = 1;
        Specified by:
        hasAndIds in interface PrincipalOrBuilder
        Returns:
        Whether the andIds field is set.
      • getAndIds

        public Principal.Set getAndIds()
         A set of identifiers that all must match in order to define the
         downstream.
         
        .envoy.config.rbac.v3.Principal.Set and_ids = 1;
        Specified by:
        getAndIds in interface PrincipalOrBuilder
        Returns:
        The andIds.
      • hasOrIds

        public boolean hasOrIds()
         A set of identifiers at least one must match in order to define the
         downstream.
         
        .envoy.config.rbac.v3.Principal.Set or_ids = 2;
        Specified by:
        hasOrIds in interface PrincipalOrBuilder
        Returns:
        Whether the orIds field is set.
      • getOrIds

        public Principal.Set getOrIds()
         A set of identifiers at least one must match in order to define the
         downstream.
         
        .envoy.config.rbac.v3.Principal.Set or_ids = 2;
        Specified by:
        getOrIds in interface PrincipalOrBuilder
        Returns:
        The orIds.
      • hasAny

        public boolean hasAny()
         When any is set, it matches any downstream.
         
        bool any = 3 [(.validate.rules) = { ... }
        Specified by:
        hasAny in interface PrincipalOrBuilder
        Returns:
        Whether the any field is set.
      • getAny

        public boolean getAny()
         When any is set, it matches any downstream.
         
        bool any = 3 [(.validate.rules) = { ... }
        Specified by:
        getAny in interface PrincipalOrBuilder
        Returns:
        The any.
      • hasAuthenticated

        public boolean hasAuthenticated()
         Authenticated attributes that identify the downstream.
         
        .envoy.config.rbac.v3.Principal.Authenticated authenticated = 4;
        Specified by:
        hasAuthenticated in interface PrincipalOrBuilder
        Returns:
        Whether the authenticated field is set.
      • hasSourceIp

        @Deprecated
        public boolean hasSourceIp()
        Deprecated.
        envoy.config.rbac.v3.Principal.source_ip is deprecated. See envoy/config/rbac/v3/rbac.proto;l=331
         A CIDR block that describes the downstream IP.
         This address will honor proxy protocol, but will not honor XFF.
        
         This field is deprecated; either use :ref:`remote_ip
         <envoy_v3_api_field_config.rbac.v3.Principal.remote_ip>` for the same
         behavior, or use
         :ref:`direct_remote_ip <envoy_v3_api_field_config.rbac.v3.Principal.direct_remote_ip>`.
         
        .envoy.config.core.v3.CidrRange source_ip = 5 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        hasSourceIp in interface PrincipalOrBuilder
        Returns:
        Whether the sourceIp field is set.
      • getSourceIp

        @Deprecated
        public CidrRange getSourceIp()
        Deprecated.
        envoy.config.rbac.v3.Principal.source_ip is deprecated. See envoy/config/rbac/v3/rbac.proto;l=331
         A CIDR block that describes the downstream IP.
         This address will honor proxy protocol, but will not honor XFF.
        
         This field is deprecated; either use :ref:`remote_ip
         <envoy_v3_api_field_config.rbac.v3.Principal.remote_ip>` for the same
         behavior, or use
         :ref:`direct_remote_ip <envoy_v3_api_field_config.rbac.v3.Principal.direct_remote_ip>`.
         
        .envoy.config.core.v3.CidrRange source_ip = 5 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        getSourceIp in interface PrincipalOrBuilder
        Returns:
        The sourceIp.
      • getSourceIpOrBuilder

        @Deprecated
        public CidrRangeOrBuilder getSourceIpOrBuilder()
        Deprecated.
         A CIDR block that describes the downstream IP.
         This address will honor proxy protocol, but will not honor XFF.
        
         This field is deprecated; either use :ref:`remote_ip
         <envoy_v3_api_field_config.rbac.v3.Principal.remote_ip>` for the same
         behavior, or use
         :ref:`direct_remote_ip <envoy_v3_api_field_config.rbac.v3.Principal.direct_remote_ip>`.
         
        .envoy.config.core.v3.CidrRange source_ip = 5 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        getSourceIpOrBuilder in interface PrincipalOrBuilder
      • hasDirectRemoteIp

        public 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_v3_api_field_config.rbac.v3.Principal.remote_ip>` is
         inferred from for example the x-forwarder-for header, proxy protocol,
         etc.
         
        .envoy.config.core.v3.CidrRange direct_remote_ip = 10;
        Specified by:
        hasDirectRemoteIp in interface PrincipalOrBuilder
        Returns:
        Whether the directRemoteIp field is set.
      • getDirectRemoteIp

        public 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_v3_api_field_config.rbac.v3.Principal.remote_ip>` is
         inferred from for example the x-forwarder-for header, proxy protocol,
         etc.
         
        .envoy.config.core.v3.CidrRange direct_remote_ip = 10;
        Specified by:
        getDirectRemoteIp in interface PrincipalOrBuilder
        Returns:
        The directRemoteIp.
      • getDirectRemoteIpOrBuilder

        public CidrRangeOrBuilder getDirectRemoteIpOrBuilder()
         A CIDR block that describes the downstream remote/origin address.
         Note: This is always the physical peer even if the
         :ref:`remote_ip <envoy_v3_api_field_config.rbac.v3.Principal.remote_ip>` is
         inferred from for example the x-forwarder-for header, proxy protocol,
         etc.
         
        .envoy.config.core.v3.CidrRange direct_remote_ip = 10;
        Specified by:
        getDirectRemoteIpOrBuilder in interface PrincipalOrBuilder
      • hasRemoteIp

        public 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_v3_api_field_config.rbac.v3.Principal.direct_remote_ip>`. E.g, if the
         remote ip is inferred from for example the x-forwarder-for header, proxy
         protocol, etc.
         
        .envoy.config.core.v3.CidrRange remote_ip = 11;
        Specified by:
        hasRemoteIp in interface PrincipalOrBuilder
        Returns:
        Whether the remoteIp field is set.
      • getRemoteIp

        public 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_v3_api_field_config.rbac.v3.Principal.direct_remote_ip>`. E.g, if the
         remote ip is inferred from for example the x-forwarder-for header, proxy
         protocol, etc.
         
        .envoy.config.core.v3.CidrRange remote_ip = 11;
        Specified by:
        getRemoteIp in interface PrincipalOrBuilder
        Returns:
        The remoteIp.
      • getRemoteIpOrBuilder

        public CidrRangeOrBuilder getRemoteIpOrBuilder()
         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_v3_api_field_config.rbac.v3.Principal.direct_remote_ip>`. E.g, if the
         remote ip is inferred from for example the x-forwarder-for header, proxy
         protocol, etc.
         
        .envoy.config.core.v3.CidrRange remote_ip = 11;
        Specified by:
        getRemoteIpOrBuilder in interface PrincipalOrBuilder
      • hasHeader

        public 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.config.route.v3.HeaderMatcher header = 6;
        Specified by:
        hasHeader in interface PrincipalOrBuilder
        Returns:
        Whether the header field is set.
      • getHeader

        public 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.config.route.v3.HeaderMatcher header = 6;
        Specified by:
        getHeader in interface PrincipalOrBuilder
        Returns:
        The header.
      • getHeaderOrBuilder

        public HeaderMatcherOrBuilder getHeaderOrBuilder()
         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.config.route.v3.HeaderMatcher header = 6;
        Specified by:
        getHeaderOrBuilder in interface PrincipalOrBuilder
      • hasUrlPath

        public boolean hasUrlPath()
         A URL path on the incoming HTTP request. Only available for HTTP.
         
        .envoy.type.matcher.v3.PathMatcher url_path = 9;
        Specified by:
        hasUrlPath in interface PrincipalOrBuilder
        Returns:
        Whether the urlPath field is set.
      • getUrlPath

        public PathMatcher getUrlPath()
         A URL path on the incoming HTTP request. Only available for HTTP.
         
        .envoy.type.matcher.v3.PathMatcher url_path = 9;
        Specified by:
        getUrlPath in interface PrincipalOrBuilder
        Returns:
        The urlPath.
      • hasMetadata

        public boolean hasMetadata()
         Metadata that describes additional information about the principal.
         
        .envoy.type.matcher.v3.MetadataMatcher metadata = 7;
        Specified by:
        hasMetadata in interface PrincipalOrBuilder
        Returns:
        Whether the metadata field is set.
      • getMetadata

        public MetadataMatcher getMetadata()
         Metadata that describes additional information about the principal.
         
        .envoy.type.matcher.v3.MetadataMatcher metadata = 7;
        Specified by:
        getMetadata in interface PrincipalOrBuilder
        Returns:
        The metadata.
      • hasFilterState

        public boolean hasFilterState()
         Identifies the principal using a filter state object.
         
        .envoy.type.matcher.v3.FilterStateMatcher filter_state = 12;
        Specified by:
        hasFilterState in interface PrincipalOrBuilder
        Returns:
        Whether the filterState field is set.
      • getFilterState

        public FilterStateMatcher getFilterState()
         Identifies the principal using a filter state object.
         
        .envoy.type.matcher.v3.FilterStateMatcher filter_state = 12;
        Specified by:
        getFilterState in interface PrincipalOrBuilder
        Returns:
        The filterState.
      • hasNotId

        public 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.v3.Principal not_id = 8;
        Specified by:
        hasNotId in interface PrincipalOrBuilder
        Returns:
        Whether the notId field is set.
      • getNotId

        public 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.v3.Principal not_id = 8;
        Specified by:
        getNotId in interface PrincipalOrBuilder
        Returns:
        The notId.
      • getNotIdOrBuilder

        public PrincipalOrBuilder getNotIdOrBuilder()
         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.v3.Principal not_id = 8;
        Specified by:
        getNotIdOrBuilder in interface PrincipalOrBuilder
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessage
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws java.io.IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessage
        Throws:
        java.io.IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessage
      • equals

        public boolean equals​(java.lang.Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static Principal parseFrom​(java.nio.ByteBuffer data)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Principal parseFrom​(java.nio.ByteBuffer data,
                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Principal parseFrom​(com.google.protobuf.ByteString data)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Principal parseFrom​(com.google.protobuf.ByteString data,
                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Principal parseFrom​(byte[] data)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Principal parseFrom​(byte[] data,
                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Principal parseFrom​(java.io.InputStream input)
                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static Principal parseFrom​(java.io.InputStream input,
                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

        public static Principal parseDelimitedFrom​(java.io.InputStream input)
                                            throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

        public static Principal parseDelimitedFrom​(java.io.InputStream input,
                                                   com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                            throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static Principal parseFrom​(com.google.protobuf.CodedInputStream input)
                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static Principal parseFrom​(com.google.protobuf.CodedInputStream input,
                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • newBuilderForType

        public Principal.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public Principal.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected Principal.Builder newBuilderForType​(com.google.protobuf.AbstractMessage.BuilderParent parent)
        Overrides:
        newBuilderForType in class com.google.protobuf.AbstractMessage
      • getDefaultInstance

        public static Principal getDefaultInstance()
      • parser

        public static com.google.protobuf.Parser<Principal> parser()
      • getParserForType

        public com.google.protobuf.Parser<Principal> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessage
      • getDefaultInstanceForType

        public Principal getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder