Class AttributePropagationSettings.Builder (0.4.0)

public static final class AttributePropagationSettings.Builder extends GeneratedMessageV3.Builder<AttributePropagationSettings.Builder> implements AttributePropagationSettingsOrBuilder

Configuration for propagating attributes to applications protected by IAP.

Protobuf type google.cloud.iap.v1.AttributePropagationSettings

Static Methods

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
Type Description
Descriptor

Methods

addAllOutputCredentials(Iterable<? extends AttributePropagationSettings.OutputCredentials> values)

public AttributePropagationSettings.Builder addAllOutputCredentials(Iterable<? extends AttributePropagationSettings.OutputCredentials> values)

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Parameter
Name Description
values Iterable<? extends com.google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials>

The outputCredentials to add.

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

addAllOutputCredentialsValue(Iterable<Integer> values)

public AttributePropagationSettings.Builder addAllOutputCredentialsValue(Iterable<Integer> values)

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Parameter
Name Description
values Iterable<Integer>

The enum numeric values on the wire for outputCredentials to add.

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

addOutputCredentials(AttributePropagationSettings.OutputCredentials value)

public AttributePropagationSettings.Builder addOutputCredentials(AttributePropagationSettings.OutputCredentials value)

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Parameter
Name Description
value AttributePropagationSettings.OutputCredentials

The outputCredentials to add.

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

addOutputCredentialsValue(int value)

public AttributePropagationSettings.Builder addOutputCredentialsValue(int value)

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Parameter
Name Description
value int

The enum numeric value on the wire for outputCredentials to add.

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

addRepeatedField(Descriptors.FieldDescriptor field, Object value)

public AttributePropagationSettings.Builder addRepeatedField(Descriptors.FieldDescriptor field, Object value)
Parameters
Name Description
field FieldDescriptor
value Object
Returns
Type Description
AttributePropagationSettings.Builder
Overrides

build()

public AttributePropagationSettings build()
Returns
Type Description
AttributePropagationSettings

buildPartial()

public AttributePropagationSettings buildPartial()
Returns
Type Description
AttributePropagationSettings

clear()

public AttributePropagationSettings.Builder clear()
Returns
Type Description
AttributePropagationSettings.Builder
Overrides

clearEnable()

public AttributePropagationSettings.Builder clearEnable()

Whether the provided attribute propagation settings should be evaluated on user requests. If set to true, attributes returned from the expression will be propagated in the set output credentials.

optional bool enable = 3;

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

clearExpression()

public AttributePropagationSettings.Builder clearExpression()

Raw string CEL expression. Must return a list of attributes. A maximum of 45 attributes can be selected. Expressions can select different attribute types from attributes: attributes.saml_attributes, attributes.iap_attributes. The following functions are supported:

  • filter <list>.filter(<iter_var>, <predicate>): Returns a subset of <list> where <predicate> is true for every item.

  • in <var> in <list>: Returns true if <list> contains <var>.

  • selectByName <list>.selectByName(<string>): Returns the attribute in <list> with the given <string> name, otherwise returns empty.

  • emitAs <attribute>.emitAs(<string>): Sets the <attribute> name field to the given <string> for propagation in selected output credentials.

  • strict <attribute>.strict(): Ignores the x-goog-iap-attr- prefix for the provided <attribute> when propagating with the HEADER output credential, such as request headers.

  • append <target_list>.append(<attribute>) OR <target_list>.append(<list>): Appends the provided <attribute> or <list> to the end of <target_list>.

    Example expression: attributes.saml_attributes.filter(x, x.name in ['test']).append(attributes.iap_attributes.selectByName('exact').emitAs('custom').strict())

optional string expression = 1;

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

clearField(Descriptors.FieldDescriptor field)

public AttributePropagationSettings.Builder clearField(Descriptors.FieldDescriptor field)
Parameter
Name Description
field FieldDescriptor
Returns
Type Description
AttributePropagationSettings.Builder
Overrides

clearOneof(Descriptors.OneofDescriptor oneof)

public AttributePropagationSettings.Builder clearOneof(Descriptors.OneofDescriptor oneof)
Parameter
Name Description
oneof OneofDescriptor
Returns
Type Description
AttributePropagationSettings.Builder
Overrides

clearOutputCredentials()

public AttributePropagationSettings.Builder clearOutputCredentials()

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

clone()

public AttributePropagationSettings.Builder clone()
Returns
Type Description
AttributePropagationSettings.Builder
Overrides

getDefaultInstanceForType()

public AttributePropagationSettings getDefaultInstanceForType()
Returns
Type Description
AttributePropagationSettings

getDescriptorForType()

public Descriptors.Descriptor getDescriptorForType()
Returns
Type Description
Descriptor
Overrides

getEnable()

public boolean getEnable()

Whether the provided attribute propagation settings should be evaluated on user requests. If set to true, attributes returned from the expression will be propagated in the set output credentials.

optional bool enable = 3;

Returns
Type Description
boolean

The enable.

getExpression()

public String getExpression()

Raw string CEL expression. Must return a list of attributes. A maximum of 45 attributes can be selected. Expressions can select different attribute types from attributes: attributes.saml_attributes, attributes.iap_attributes. The following functions are supported:

  • filter <list>.filter(<iter_var>, <predicate>): Returns a subset of <list> where <predicate> is true for every item.

  • in <var> in <list>: Returns true if <list> contains <var>.

  • selectByName <list>.selectByName(<string>): Returns the attribute in <list> with the given <string> name, otherwise returns empty.

  • emitAs <attribute>.emitAs(<string>): Sets the <attribute> name field to the given <string> for propagation in selected output credentials.

  • strict <attribute>.strict(): Ignores the x-goog-iap-attr- prefix for the provided <attribute> when propagating with the HEADER output credential, such as request headers.

  • append <target_list>.append(<attribute>) OR <target_list>.append(<list>): Appends the provided <attribute> or <list> to the end of <target_list>.

    Example expression: attributes.saml_attributes.filter(x, x.name in ['test']).append(attributes.iap_attributes.selectByName('exact').emitAs('custom').strict())

optional string expression = 1;

Returns
Type Description
String

The expression.

getExpressionBytes()

public ByteString getExpressionBytes()

Raw string CEL expression. Must return a list of attributes. A maximum of 45 attributes can be selected. Expressions can select different attribute types from attributes: attributes.saml_attributes, attributes.iap_attributes. The following functions are supported:

  • filter <list>.filter(<iter_var>, <predicate>): Returns a subset of <list> where <predicate> is true for every item.

  • in <var> in <list>: Returns true if <list> contains <var>.

  • selectByName <list>.selectByName(<string>): Returns the attribute in <list> with the given <string> name, otherwise returns empty.

  • emitAs <attribute>.emitAs(<string>): Sets the <attribute> name field to the given <string> for propagation in selected output credentials.

  • strict <attribute>.strict(): Ignores the x-goog-iap-attr- prefix for the provided <attribute> when propagating with the HEADER output credential, such as request headers.

  • append <target_list>.append(<attribute>) OR <target_list>.append(<list>): Appends the provided <attribute> or <list> to the end of <target_list>.

    Example expression: attributes.saml_attributes.filter(x, x.name in ['test']).append(attributes.iap_attributes.selectByName('exact').emitAs('custom').strict())

optional string expression = 1;

Returns
Type Description
ByteString

The bytes for expression.

getOutputCredentials(int index)

public AttributePropagationSettings.OutputCredentials getOutputCredentials(int index)

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Parameter
Name Description
index int

The index of the element to return.

Returns
Type Description
AttributePropagationSettings.OutputCredentials

The outputCredentials at the given index.

getOutputCredentialsCount()

public int getOutputCredentialsCount()

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Returns
Type Description
int

The count of outputCredentials.

getOutputCredentialsList()

public List<AttributePropagationSettings.OutputCredentials> getOutputCredentialsList()

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Returns
Type Description
List<OutputCredentials>

A list containing the outputCredentials.

getOutputCredentialsValue(int index)

public int getOutputCredentialsValue(int index)

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Parameter
Name Description
index int

The index of the value to return.

Returns
Type Description
int

The enum numeric value on the wire of outputCredentials at the given index.

getOutputCredentialsValueList()

public List<Integer> getOutputCredentialsValueList()

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Returns
Type Description
List<Integer>

A list containing the enum numeric values on the wire for outputCredentials.

hasEnable()

public boolean hasEnable()

Whether the provided attribute propagation settings should be evaluated on user requests. If set to true, attributes returned from the expression will be propagated in the set output credentials.

optional bool enable = 3;

Returns
Type Description
boolean

Whether the enable field is set.

hasExpression()

public boolean hasExpression()

Raw string CEL expression. Must return a list of attributes. A maximum of 45 attributes can be selected. Expressions can select different attribute types from attributes: attributes.saml_attributes, attributes.iap_attributes. The following functions are supported:

  • filter <list>.filter(<iter_var>, <predicate>): Returns a subset of <list> where <predicate> is true for every item.

  • in <var> in <list>: Returns true if <list> contains <var>.

  • selectByName <list>.selectByName(<string>): Returns the attribute in <list> with the given <string> name, otherwise returns empty.

  • emitAs <attribute>.emitAs(<string>): Sets the <attribute> name field to the given <string> for propagation in selected output credentials.

  • strict <attribute>.strict(): Ignores the x-goog-iap-attr- prefix for the provided <attribute> when propagating with the HEADER output credential, such as request headers.

  • append <target_list>.append(<attribute>) OR <target_list>.append(<list>): Appends the provided <attribute> or <list> to the end of <target_list>.

    Example expression: attributes.saml_attributes.filter(x, x.name in ['test']).append(attributes.iap_attributes.selectByName('exact').emitAs('custom').strict())

optional string expression = 1;

Returns
Type Description
boolean

Whether the expression field is set.

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Type Description
FieldAccessorTable
Overrides

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

mergeFrom(AttributePropagationSettings other)

public AttributePropagationSettings.Builder mergeFrom(AttributePropagationSettings other)
Parameter
Name Description
other AttributePropagationSettings
Returns
Type Description
AttributePropagationSettings.Builder

mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public AttributePropagationSettings.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input CodedInputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
AttributePropagationSettings.Builder
Overrides
Exceptions
Type Description
IOException

mergeFrom(Message other)

public AttributePropagationSettings.Builder mergeFrom(Message other)
Parameter
Name Description
other Message
Returns
Type Description
AttributePropagationSettings.Builder
Overrides

mergeUnknownFields(UnknownFieldSet unknownFields)

public final AttributePropagationSettings.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
Parameter
Name Description
unknownFields UnknownFieldSet
Returns
Type Description
AttributePropagationSettings.Builder
Overrides

setEnable(boolean value)

public AttributePropagationSettings.Builder setEnable(boolean value)

Whether the provided attribute propagation settings should be evaluated on user requests. If set to true, attributes returned from the expression will be propagated in the set output credentials.

optional bool enable = 3;

Parameter
Name Description
value boolean

The enable to set.

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

setExpression(String value)

public AttributePropagationSettings.Builder setExpression(String value)

Raw string CEL expression. Must return a list of attributes. A maximum of 45 attributes can be selected. Expressions can select different attribute types from attributes: attributes.saml_attributes, attributes.iap_attributes. The following functions are supported:

  • filter <list>.filter(<iter_var>, <predicate>): Returns a subset of <list> where <predicate> is true for every item.

  • in <var> in <list>: Returns true if <list> contains <var>.

  • selectByName <list>.selectByName(<string>): Returns the attribute in <list> with the given <string> name, otherwise returns empty.

  • emitAs <attribute>.emitAs(<string>): Sets the <attribute> name field to the given <string> for propagation in selected output credentials.

  • strict <attribute>.strict(): Ignores the x-goog-iap-attr- prefix for the provided <attribute> when propagating with the HEADER output credential, such as request headers.

  • append <target_list>.append(<attribute>) OR <target_list>.append(<list>): Appends the provided <attribute> or <list> to the end of <target_list>.

    Example expression: attributes.saml_attributes.filter(x, x.name in ['test']).append(attributes.iap_attributes.selectByName('exact').emitAs('custom').strict())

optional string expression = 1;

Parameter
Name Description
value String

The expression to set.

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

setExpressionBytes(ByteString value)

public AttributePropagationSettings.Builder setExpressionBytes(ByteString value)

Raw string CEL expression. Must return a list of attributes. A maximum of 45 attributes can be selected. Expressions can select different attribute types from attributes: attributes.saml_attributes, attributes.iap_attributes. The following functions are supported:

  • filter <list>.filter(<iter_var>, <predicate>): Returns a subset of <list> where <predicate> is true for every item.

  • in <var> in <list>: Returns true if <list> contains <var>.

  • selectByName <list>.selectByName(<string>): Returns the attribute in <list> with the given <string> name, otherwise returns empty.

  • emitAs <attribute>.emitAs(<string>): Sets the <attribute> name field to the given <string> for propagation in selected output credentials.

  • strict <attribute>.strict(): Ignores the x-goog-iap-attr- prefix for the provided <attribute> when propagating with the HEADER output credential, such as request headers.

  • append <target_list>.append(<attribute>) OR <target_list>.append(<list>): Appends the provided <attribute> or <list> to the end of <target_list>.

    Example expression: attributes.saml_attributes.filter(x, x.name in ['test']).append(attributes.iap_attributes.selectByName('exact').emitAs('custom').strict())

optional string expression = 1;

Parameter
Name Description
value ByteString

The bytes for expression to set.

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

setField(Descriptors.FieldDescriptor field, Object value)

public AttributePropagationSettings.Builder setField(Descriptors.FieldDescriptor field, Object value)
Parameters
Name Description
field FieldDescriptor
value Object
Returns
Type Description
AttributePropagationSettings.Builder
Overrides

setOutputCredentials(int index, AttributePropagationSettings.OutputCredentials value)

public AttributePropagationSettings.Builder setOutputCredentials(int index, AttributePropagationSettings.OutputCredentials value)

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Parameters
Name Description
index int

The index to set the value at.

value AttributePropagationSettings.OutputCredentials

The outputCredentials to set.

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

setOutputCredentialsValue(int index, int value)

public AttributePropagationSettings.Builder setOutputCredentialsValue(int index, int value)

Which output credentials attributes selected by the CEL expression should be propagated in. All attributes will be fully duplicated in each selected output credential.

repeated .google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials output_credentials = 2;

Parameters
Name Description
index int

The index to set the value at.

value int

The enum numeric value on the wire for outputCredentials to set.

Returns
Type Description
AttributePropagationSettings.Builder

This builder for chaining.

setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)

public AttributePropagationSettings.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
Parameters
Name Description
field FieldDescriptor
index int
value Object
Returns
Type Description
AttributePropagationSettings.Builder
Overrides

setUnknownFields(UnknownFieldSet unknownFields)

public final AttributePropagationSettings.Builder setUnknownFields(UnknownFieldSet unknownFields)
Parameter
Name Description
unknownFields UnknownFieldSet
Returns
Type Description
AttributePropagationSettings.Builder
Overrides