Class AttributePropagationSettings (0.7.0)

public final class AttributePropagationSettings extends GeneratedMessageV3 implements AttributePropagationSettingsOrBuilder

Configuration for propagating attributes to applications protected by IAP.

Protobuf type google.cloud.iap.v1.AttributePropagationSettings

Static Fields

ENABLE_FIELD_NUMBER

public static final int ENABLE_FIELD_NUMBER
Field Value
Type Description
int

EXPRESSION_FIELD_NUMBER

public static final int EXPRESSION_FIELD_NUMBER
Field Value
Type Description
int

OUTPUT_CREDENTIALS_FIELD_NUMBER

public static final int OUTPUT_CREDENTIALS_FIELD_NUMBER
Field Value
Type Description
int

Static Methods

getDefaultInstance()

public static AttributePropagationSettings getDefaultInstance()
Returns
Type Description
AttributePropagationSettings

getDescriptor()

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

newBuilder()

public static AttributePropagationSettings.Builder newBuilder()
Returns
Type Description
AttributePropagationSettings.Builder

newBuilder(AttributePropagationSettings prototype)

public static AttributePropagationSettings.Builder newBuilder(AttributePropagationSettings prototype)
Parameter
Name Description
prototype AttributePropagationSettings
Returns
Type Description
AttributePropagationSettings.Builder

parseDelimitedFrom(InputStream input)

public static AttributePropagationSettings parseDelimitedFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static AttributePropagationSettings parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
IOException

parseFrom(byte[] data)

public static AttributePropagationSettings parseFrom(byte[] data)
Parameter
Name Description
data byte[]
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static AttributePropagationSettings parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data byte[]
extensionRegistry ExtensionRegistryLite
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data)

public static AttributePropagationSettings parseFrom(ByteString data)
Parameter
Name Description
data ByteString
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

public static AttributePropagationSettings parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteString
extensionRegistry ExtensionRegistryLite
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(CodedInputStream input)

public static AttributePropagationSettings parseFrom(CodedInputStream input)
Parameter
Name Description
input CodedInputStream
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
IOException

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public static AttributePropagationSettings parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input CodedInputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
IOException

parseFrom(InputStream input)

public static AttributePropagationSettings parseFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
IOException

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static AttributePropagationSettings parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
IOException

parseFrom(ByteBuffer data)

public static AttributePropagationSettings parseFrom(ByteBuffer data)
Parameter
Name Description
data ByteBuffer
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

public static AttributePropagationSettings parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteBuffer
extensionRegistry ExtensionRegistryLite
Returns
Type Description
AttributePropagationSettings
Exceptions
Type Description
InvalidProtocolBufferException

parser()

public static Parser<AttributePropagationSettings> parser()
Returns
Type Description
Parser<AttributePropagationSettings>

Methods

equals(Object obj)

public boolean equals(Object obj)
Parameter
Name Description
obj Object
Returns
Type Description
boolean
Overrides

getDefaultInstanceForType()

public AttributePropagationSettings getDefaultInstanceForType()
Returns
Type Description
AttributePropagationSettings

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.

getParserForType()

public Parser<AttributePropagationSettings> getParserForType()
Returns
Type Description
Parser<AttributePropagationSettings>
Overrides

getSerializedSize()

public int getSerializedSize()
Returns
Type Description
int
Overrides

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.

hashCode()

public int hashCode()
Returns
Type Description
int
Overrides

internalGetFieldAccessorTable()

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

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

newBuilderForType()

public AttributePropagationSettings.Builder newBuilderForType()
Returns
Type Description
AttributePropagationSettings.Builder

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

protected AttributePropagationSettings.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
Name Description
parent BuilderParent
Returns
Type Description
AttributePropagationSettings.Builder
Overrides

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
Name Description
unused UnusedPrivateParameter
Returns
Type Description
Object
Overrides

toBuilder()

public AttributePropagationSettings.Builder toBuilder()
Returns
Type Description
AttributePropagationSettings.Builder

writeTo(CodedOutputStream output)

public void writeTo(CodedOutputStream output)
Parameter
Name Description
output CodedOutputStream
Overrides
Exceptions
Type Description
IOException