Class ClientSideAccessBoundaryRule.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessage.Builder<ClientSideAccessBoundaryRule.Builder>
com.google.auth.credentialaccessboundary.protobuf.ClientSideAccessBoundaryRule.Builder
All Implemented Interfaces:
ClientSideAccessBoundaryRuleOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cloneable
Enclosing class:
ClientSideAccessBoundaryRule

public static final class ClientSideAccessBoundaryRule.Builder extends com.google.protobuf.GeneratedMessage.Builder<ClientSideAccessBoundaryRule.Builder> implements ClientSideAccessBoundaryRuleOrBuilder
 An access boundary rule that defines an upper bound of IAM
 permissions on a single resource. This proto has a compiled version of the
 availability_condition in the STS API AccessBoundaryRule
 (google3/google/identity/sts/v1/access_boundary.proto). It is used to
 format the access boundary restriction in the Client-Side CAB access token.
 
Protobuf type cloud.identity.unifiedauth.proto.ClientSideAccessBoundaryRule
  • Method Details

    • 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.Builder<ClientSideAccessBoundaryRule.Builder>
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessage.Builder<ClientSideAccessBoundaryRule.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessage.Builder<ClientSideAccessBoundaryRule.Builder>
    • getDefaultInstanceForType

      public ClientSideAccessBoundaryRule getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public ClientSideAccessBoundaryRule buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • mergeFrom

      public ClientSideAccessBoundaryRule.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<ClientSideAccessBoundaryRule.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage.Builder<ClientSideAccessBoundaryRule.Builder>
    • mergeFrom

      public ClientSideAccessBoundaryRule.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<ClientSideAccessBoundaryRule.Builder>
      Throws:
      IOException
    • getAvailableResource

      public String getAvailableResource()
       The full resource name of a Google Cloud resource entity.
       The format definition is at
       https://cloud.google.com/apis/design/resource_names.
      
       Example value: `//cloudresourcemanager.googleapis.com/projects/my-project`.
       
      string available_resource = 1 [features = { ... }
      Specified by:
      getAvailableResource in interface ClientSideAccessBoundaryRuleOrBuilder
      Returns:
      The availableResource.
    • getAvailableResourceBytes

      public com.google.protobuf.ByteString getAvailableResourceBytes()
       The full resource name of a Google Cloud resource entity.
       The format definition is at
       https://cloud.google.com/apis/design/resource_names.
      
       Example value: `//cloudresourcemanager.googleapis.com/projects/my-project`.
       
      string available_resource = 1 [features = { ... }
      Specified by:
      getAvailableResourceBytes in interface ClientSideAccessBoundaryRuleOrBuilder
      Returns:
      The bytes for availableResource.
    • setAvailableResource

      public ClientSideAccessBoundaryRule.Builder setAvailableResource(String value)
       The full resource name of a Google Cloud resource entity.
       The format definition is at
       https://cloud.google.com/apis/design/resource_names.
      
       Example value: `//cloudresourcemanager.googleapis.com/projects/my-project`.
       
      string available_resource = 1 [features = { ... }
      Parameters:
      value - The availableResource to set.
      Returns:
      This builder for chaining.
    • clearAvailableResource

      public ClientSideAccessBoundaryRule.Builder clearAvailableResource()
       The full resource name of a Google Cloud resource entity.
       The format definition is at
       https://cloud.google.com/apis/design/resource_names.
      
       Example value: `//cloudresourcemanager.googleapis.com/projects/my-project`.
       
      string available_resource = 1 [features = { ... }
      Returns:
      This builder for chaining.
    • setAvailableResourceBytes

      public ClientSideAccessBoundaryRule.Builder setAvailableResourceBytes(com.google.protobuf.ByteString value)
       The full resource name of a Google Cloud resource entity.
       The format definition is at
       https://cloud.google.com/apis/design/resource_names.
      
       Example value: `//cloudresourcemanager.googleapis.com/projects/my-project`.
       
      string available_resource = 1 [features = { ... }
      Parameters:
      value - The bytes for availableResource to set.
      Returns:
      This builder for chaining.
    • getAvailablePermissionsList

      public com.google.protobuf.ProtocolStringList getAvailablePermissionsList()
       A list of permissions that may be allowed for use on the specified
       resource.
      
       The only supported values in the list are IAM roles, following the format
       of [google.iam.v1.Binding.role][].
      
       Example value: `inRole:roles/logging.viewer` for predefined roles and
       `inRole:organizations/{ORGANIZATION_ID}/roles/logging.viewer` for custom
       roles.
       
      repeated string available_permissions = 2;
      Specified by:
      getAvailablePermissionsList in interface ClientSideAccessBoundaryRuleOrBuilder
      Returns:
      A list containing the availablePermissions.
    • getAvailablePermissionsCount

      public int getAvailablePermissionsCount()
       A list of permissions that may be allowed for use on the specified
       resource.
      
       The only supported values in the list are IAM roles, following the format
       of [google.iam.v1.Binding.role][].
      
       Example value: `inRole:roles/logging.viewer` for predefined roles and
       `inRole:organizations/{ORGANIZATION_ID}/roles/logging.viewer` for custom
       roles.
       
      repeated string available_permissions = 2;
      Specified by:
      getAvailablePermissionsCount in interface ClientSideAccessBoundaryRuleOrBuilder
      Returns:
      The count of availablePermissions.
    • getAvailablePermissions

      public String getAvailablePermissions(int index)
       A list of permissions that may be allowed for use on the specified
       resource.
      
       The only supported values in the list are IAM roles, following the format
       of [google.iam.v1.Binding.role][].
      
       Example value: `inRole:roles/logging.viewer` for predefined roles and
       `inRole:organizations/{ORGANIZATION_ID}/roles/logging.viewer` for custom
       roles.
       
      repeated string available_permissions = 2;
      Specified by:
      getAvailablePermissions in interface ClientSideAccessBoundaryRuleOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The availablePermissions at the given index.
    • getAvailablePermissionsBytes

      public com.google.protobuf.ByteString getAvailablePermissionsBytes(int index)
       A list of permissions that may be allowed for use on the specified
       resource.
      
       The only supported values in the list are IAM roles, following the format
       of [google.iam.v1.Binding.role][].
      
       Example value: `inRole:roles/logging.viewer` for predefined roles and
       `inRole:organizations/{ORGANIZATION_ID}/roles/logging.viewer` for custom
       roles.
       
      repeated string available_permissions = 2;
      Specified by:
      getAvailablePermissionsBytes in interface ClientSideAccessBoundaryRuleOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the availablePermissions at the given index.
    • setAvailablePermissions

      public ClientSideAccessBoundaryRule.Builder setAvailablePermissions(int index, String value)
       A list of permissions that may be allowed for use on the specified
       resource.
      
       The only supported values in the list are IAM roles, following the format
       of [google.iam.v1.Binding.role][].
      
       Example value: `inRole:roles/logging.viewer` for predefined roles and
       `inRole:organizations/{ORGANIZATION_ID}/roles/logging.viewer` for custom
       roles.
       
      repeated string available_permissions = 2;
      Parameters:
      index - The index to set the value at.
      value - The availablePermissions to set.
      Returns:
      This builder for chaining.
    • addAvailablePermissions

      public ClientSideAccessBoundaryRule.Builder addAvailablePermissions(String value)
       A list of permissions that may be allowed for use on the specified
       resource.
      
       The only supported values in the list are IAM roles, following the format
       of [google.iam.v1.Binding.role][].
      
       Example value: `inRole:roles/logging.viewer` for predefined roles and
       `inRole:organizations/{ORGANIZATION_ID}/roles/logging.viewer` for custom
       roles.
       
      repeated string available_permissions = 2;
      Parameters:
      value - The availablePermissions to add.
      Returns:
      This builder for chaining.
    • addAllAvailablePermissions

      public ClientSideAccessBoundaryRule.Builder addAllAvailablePermissions(Iterable<String> values)
       A list of permissions that may be allowed for use on the specified
       resource.
      
       The only supported values in the list are IAM roles, following the format
       of [google.iam.v1.Binding.role][].
      
       Example value: `inRole:roles/logging.viewer` for predefined roles and
       `inRole:organizations/{ORGANIZATION_ID}/roles/logging.viewer` for custom
       roles.
       
      repeated string available_permissions = 2;
      Parameters:
      values - The availablePermissions to add.
      Returns:
      This builder for chaining.
    • clearAvailablePermissions

      public ClientSideAccessBoundaryRule.Builder clearAvailablePermissions()
       A list of permissions that may be allowed for use on the specified
       resource.
      
       The only supported values in the list are IAM roles, following the format
       of [google.iam.v1.Binding.role][].
      
       Example value: `inRole:roles/logging.viewer` for predefined roles and
       `inRole:organizations/{ORGANIZATION_ID}/roles/logging.viewer` for custom
       roles.
       
      repeated string available_permissions = 2;
      Returns:
      This builder for chaining.
    • addAvailablePermissionsBytes

      public ClientSideAccessBoundaryRule.Builder addAvailablePermissionsBytes(com.google.protobuf.ByteString value)
       A list of permissions that may be allowed for use on the specified
       resource.
      
       The only supported values in the list are IAM roles, following the format
       of [google.iam.v1.Binding.role][].
      
       Example value: `inRole:roles/logging.viewer` for predefined roles and
       `inRole:organizations/{ORGANIZATION_ID}/roles/logging.viewer` for custom
       roles.
       
      repeated string available_permissions = 2;
      Parameters:
      value - The bytes of the availablePermissions to add.
      Returns:
      This builder for chaining.
    • hasCompiledAvailabilityCondition

      public boolean hasCompiledAvailabilityCondition()
       The compiled version of the
       availability_condition in the STS API AccessBoundaryRule
       (google3/google/identity/sts/v1/access_boundary.proto) with limited
       function support.
       
      .google.api.expr.Expr compiled_availability_condition = 4;
      Specified by:
      hasCompiledAvailabilityCondition in interface ClientSideAccessBoundaryRuleOrBuilder
      Returns:
      Whether the compiledAvailabilityCondition field is set.
    • getCompiledAvailabilityCondition

      public dev.cel.expr.Expr getCompiledAvailabilityCondition()
       The compiled version of the
       availability_condition in the STS API AccessBoundaryRule
       (google3/google/identity/sts/v1/access_boundary.proto) with limited
       function support.
       
      .google.api.expr.Expr compiled_availability_condition = 4;
      Specified by:
      getCompiledAvailabilityCondition in interface ClientSideAccessBoundaryRuleOrBuilder
      Returns:
      The compiledAvailabilityCondition.
    • setCompiledAvailabilityCondition

      public ClientSideAccessBoundaryRule.Builder setCompiledAvailabilityCondition(dev.cel.expr.Expr value)
       The compiled version of the
       availability_condition in the STS API AccessBoundaryRule
       (google3/google/identity/sts/v1/access_boundary.proto) with limited
       function support.
       
      .google.api.expr.Expr compiled_availability_condition = 4;
    • setCompiledAvailabilityCondition

      public ClientSideAccessBoundaryRule.Builder setCompiledAvailabilityCondition(dev.cel.expr.Expr.Builder builderForValue)
       The compiled version of the
       availability_condition in the STS API AccessBoundaryRule
       (google3/google/identity/sts/v1/access_boundary.proto) with limited
       function support.
       
      .google.api.expr.Expr compiled_availability_condition = 4;
    • mergeCompiledAvailabilityCondition

      public ClientSideAccessBoundaryRule.Builder mergeCompiledAvailabilityCondition(dev.cel.expr.Expr value)
       The compiled version of the
       availability_condition in the STS API AccessBoundaryRule
       (google3/google/identity/sts/v1/access_boundary.proto) with limited
       function support.
       
      .google.api.expr.Expr compiled_availability_condition = 4;
    • clearCompiledAvailabilityCondition

      public ClientSideAccessBoundaryRule.Builder clearCompiledAvailabilityCondition()
       The compiled version of the
       availability_condition in the STS API AccessBoundaryRule
       (google3/google/identity/sts/v1/access_boundary.proto) with limited
       function support.
       
      .google.api.expr.Expr compiled_availability_condition = 4;
    • getCompiledAvailabilityConditionBuilder

      public dev.cel.expr.Expr.Builder getCompiledAvailabilityConditionBuilder()
       The compiled version of the
       availability_condition in the STS API AccessBoundaryRule
       (google3/google/identity/sts/v1/access_boundary.proto) with limited
       function support.
       
      .google.api.expr.Expr compiled_availability_condition = 4;
    • getCompiledAvailabilityConditionOrBuilder

      public dev.cel.expr.ExprOrBuilder getCompiledAvailabilityConditionOrBuilder()
       The compiled version of the
       availability_condition in the STS API AccessBoundaryRule
       (google3/google/identity/sts/v1/access_boundary.proto) with limited
       function support.
       
      .google.api.expr.Expr compiled_availability_condition = 4;
      Specified by:
      getCompiledAvailabilityConditionOrBuilder in interface ClientSideAccessBoundaryRuleOrBuilder