Class PolicyBinding.Builder (1.52.0)

public static final class PolicyBinding.Builder extends GeneratedMessageV3.Builder<PolicyBinding.Builder> implements PolicyBindingOrBuilder

IAM policy binding resource.

Protobuf type google.iam.v3.PolicyBinding

Static Methods

getDescriptor()

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

Methods

addRepeatedField(Descriptors.FieldDescriptor field, Object value)

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

build()

public PolicyBinding build()
Returns
Type Description
PolicyBinding

buildPartial()

public PolicyBinding buildPartial()
Returns
Type Description
PolicyBinding

clear()

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

clearAnnotations()

public PolicyBinding.Builder clearAnnotations()
Returns
Type Description
PolicyBinding.Builder

clearCondition()

public PolicyBinding.Builder clearCondition()

Optional. The condition to apply to the policy binding. When set, the expression field in the Expr must include from 1 to 10 subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or "!"(Logical NOT) operators and cannot contain more than 250 characters.

The condition is currently only supported when bound to policies of kind principal access boundary.

When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are principal.type and principal.subject. An example expression is: "principal.type == 'iam.googleapis.com/ServiceAccount'" or "principal.subject == 'bob@example.com'".

Allowed operations for principal.subject:

  • principal.subject == <principal subject string>
  • principal.subject != <principal subject string>
  • principal.subject in [<list of principal subjects>]
  • principal.subject.startsWith(<string>)
  • principal.subject.endsWith(<string>)

    Allowed operations for principal.type:

  • principal.type == <principal type string>

  • principal.type != <principal type string>
  • principal.type in [<list of principal types>]

    Supported principal types are Workspace, Workforce Pool, Workload Pool and Service Account. Allowed string must be one of:

  • iam.googleapis.com/WorkspaceIdentity

  • iam.googleapis.com/WorkforcePoolIdentity
  • iam.googleapis.com/WorkloadPoolIdentity
  • iam.googleapis.com/ServiceAccount

.google.type.Expr condition = 8 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
PolicyBinding.Builder

clearCreateTime()

public PolicyBinding.Builder clearCreateTime()

Output only. The time when the policy binding was created.

.google.protobuf.Timestamp create_time = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
PolicyBinding.Builder

clearDisplayName()

public PolicyBinding.Builder clearDisplayName()

Optional. The description of the policy binding. Must be less than or equal to 63 characters.

string display_name = 4 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

clearEtag()

public PolicyBinding.Builder clearEtag()

Optional. The etag for the policy binding. If this is provided on update, it must match the server's etag.

string etag = 3 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

clearField(Descriptors.FieldDescriptor field)

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

clearName()

public PolicyBinding.Builder clearName()

Identifier. The name of the policy binding, in the format {binding_parent/locations/{location}/policyBindings/{policy_binding_id}. The binding parent is the closest Resource Manager resource (project, folder, or organization) to the binding target.

Format:

  • projects/{project_id}/locations/{location}/policyBindings/{policy_binding_id}
  • projects/{project_number}/locations/{location}/policyBindings/{policy_binding_id}
  • folders/{folder_id}/locations/{location}/policyBindings/{policy_binding_id}
  • organizations/{organization_id}/locations/{location}/policyBindings/{policy_binding_id}

string name = 1 [(.google.api.field_behavior) = IDENTIFIER];

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

clearOneof(Descriptors.OneofDescriptor oneof)

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

clearPolicy()

public PolicyBinding.Builder clearPolicy()

Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same organization.

string policy = 7 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

clearPolicyKind()

public PolicyBinding.Builder clearPolicyKind()

Immutable. The kind of the policy to attach in this binding. This field must be one of the following:

  • Left empty (will be automatically set to the policy kind)
  • The input policy kind

.google.iam.v3.PolicyBinding.PolicyKind policy_kind = 11 [(.google.api.field_behavior) = IMMUTABLE];

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

clearPolicyUid()

public PolicyBinding.Builder clearPolicyUid()

Output only. The globally unique ID of the policy to be bound.

string policy_uid = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

clearTarget()

public PolicyBinding.Builder clearTarget()

Required. Immutable. Target is the full resource name of the resource to which the policy will be bound. Immutable once set.

.google.iam.v3.PolicyBinding.Target target = 6 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Returns
Type Description
PolicyBinding.Builder

clearUid()

public PolicyBinding.Builder clearUid()

Output only. The globally unique ID of the policy binding. Assigned when the policy binding is created.

string uid = 2 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... }

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

clearUpdateTime()

public PolicyBinding.Builder clearUpdateTime()

Output only. The time when the policy binding was most recently updated.

.google.protobuf.Timestamp update_time = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
PolicyBinding.Builder

clone()

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

containsAnnotations(String key)

public boolean containsAnnotations(String key)

Optional. User-defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size limitations

map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
key String
Returns
Type Description
boolean

getAnnotations() (deprecated)

public Map<String,String> getAnnotations()

Use #getAnnotationsMap() instead.

Returns
Type Description
Map<String,String>

getAnnotationsCount()

public int getAnnotationsCount()

Optional. User-defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size limitations

map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
int

getAnnotationsMap()

public Map<String,String> getAnnotationsMap()

Optional. User-defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size limitations

map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
Map<String,String>

getAnnotationsOrDefault(String key, String defaultValue)

public String getAnnotationsOrDefault(String key, String defaultValue)

Optional. User-defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size limitations

map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL];

Parameters
Name Description
key String
defaultValue String
Returns
Type Description
String

getAnnotationsOrThrow(String key)

public String getAnnotationsOrThrow(String key)

Optional. User-defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size limitations

map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
key String
Returns
Type Description
String

getCondition()

public Expr getCondition()

Optional. The condition to apply to the policy binding. When set, the expression field in the Expr must include from 1 to 10 subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or "!"(Logical NOT) operators and cannot contain more than 250 characters.

The condition is currently only supported when bound to policies of kind principal access boundary.

When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are principal.type and principal.subject. An example expression is: "principal.type == 'iam.googleapis.com/ServiceAccount'" or "principal.subject == 'bob@example.com'".

Allowed operations for principal.subject:

  • principal.subject == <principal subject string>
  • principal.subject != <principal subject string>
  • principal.subject in [<list of principal subjects>]
  • principal.subject.startsWith(<string>)
  • principal.subject.endsWith(<string>)

    Allowed operations for principal.type:

  • principal.type == <principal type string>

  • principal.type != <principal type string>
  • principal.type in [<list of principal types>]

    Supported principal types are Workspace, Workforce Pool, Workload Pool and Service Account. Allowed string must be one of:

  • iam.googleapis.com/WorkspaceIdentity

  • iam.googleapis.com/WorkforcePoolIdentity
  • iam.googleapis.com/WorkloadPoolIdentity
  • iam.googleapis.com/ServiceAccount

.google.type.Expr condition = 8 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
com.google.type.Expr

The condition.

getConditionBuilder()

public Expr.Builder getConditionBuilder()

Optional. The condition to apply to the policy binding. When set, the expression field in the Expr must include from 1 to 10 subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or "!"(Logical NOT) operators and cannot contain more than 250 characters.

The condition is currently only supported when bound to policies of kind principal access boundary.

When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are principal.type and principal.subject. An example expression is: "principal.type == 'iam.googleapis.com/ServiceAccount'" or "principal.subject == 'bob@example.com'".

Allowed operations for principal.subject:

  • principal.subject == <principal subject string>
  • principal.subject != <principal subject string>
  • principal.subject in [<list of principal subjects>]
  • principal.subject.startsWith(<string>)
  • principal.subject.endsWith(<string>)

    Allowed operations for principal.type:

  • principal.type == <principal type string>

  • principal.type != <principal type string>
  • principal.type in [<list of principal types>]

    Supported principal types are Workspace, Workforce Pool, Workload Pool and Service Account. Allowed string must be one of:

  • iam.googleapis.com/WorkspaceIdentity

  • iam.googleapis.com/WorkforcePoolIdentity
  • iam.googleapis.com/WorkloadPoolIdentity
  • iam.googleapis.com/ServiceAccount

.google.type.Expr condition = 8 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
com.google.type.Expr.Builder

getConditionOrBuilder()

public ExprOrBuilder getConditionOrBuilder()

Optional. The condition to apply to the policy binding. When set, the expression field in the Expr must include from 1 to 10 subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or "!"(Logical NOT) operators and cannot contain more than 250 characters.

The condition is currently only supported when bound to policies of kind principal access boundary.

When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are principal.type and principal.subject. An example expression is: "principal.type == 'iam.googleapis.com/ServiceAccount'" or "principal.subject == 'bob@example.com'".

Allowed operations for principal.subject:

  • principal.subject == <principal subject string>
  • principal.subject != <principal subject string>
  • principal.subject in [<list of principal subjects>]
  • principal.subject.startsWith(<string>)
  • principal.subject.endsWith(<string>)

    Allowed operations for principal.type:

  • principal.type == <principal type string>

  • principal.type != <principal type string>
  • principal.type in [<list of principal types>]

    Supported principal types are Workspace, Workforce Pool, Workload Pool and Service Account. Allowed string must be one of:

  • iam.googleapis.com/WorkspaceIdentity

  • iam.googleapis.com/WorkforcePoolIdentity
  • iam.googleapis.com/WorkloadPoolIdentity
  • iam.googleapis.com/ServiceAccount

.google.type.Expr condition = 8 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
com.google.type.ExprOrBuilder

getCreateTime()

public Timestamp getCreateTime()

Output only. The time when the policy binding was created.

.google.protobuf.Timestamp create_time = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
Timestamp

The createTime.

getCreateTimeBuilder()

public Timestamp.Builder getCreateTimeBuilder()

Output only. The time when the policy binding was created.

.google.protobuf.Timestamp create_time = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
Builder

getCreateTimeOrBuilder()

public TimestampOrBuilder getCreateTimeOrBuilder()

Output only. The time when the policy binding was created.

.google.protobuf.Timestamp create_time = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
TimestampOrBuilder

getDefaultInstanceForType()

public PolicyBinding getDefaultInstanceForType()
Returns
Type Description
PolicyBinding

getDescriptorForType()

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

getDisplayName()

public String getDisplayName()

Optional. The description of the policy binding. Must be less than or equal to 63 characters.

string display_name = 4 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
String

The displayName.

getDisplayNameBytes()

public ByteString getDisplayNameBytes()

Optional. The description of the policy binding. Must be less than or equal to 63 characters.

string display_name = 4 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
ByteString

The bytes for displayName.

getEtag()

public String getEtag()

Optional. The etag for the policy binding. If this is provided on update, it must match the server's etag.

string etag = 3 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
String

The etag.

getEtagBytes()

public ByteString getEtagBytes()

Optional. The etag for the policy binding. If this is provided on update, it must match the server's etag.

string etag = 3 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
ByteString

The bytes for etag.

getMutableAnnotations() (deprecated)

public Map<String,String> getMutableAnnotations()

Use alternate mutation accessors instead.

Returns
Type Description
Map<String,String>

getName()

public String getName()

Identifier. The name of the policy binding, in the format {binding_parent/locations/{location}/policyBindings/{policy_binding_id}. The binding parent is the closest Resource Manager resource (project, folder, or organization) to the binding target.

Format:

  • projects/{project_id}/locations/{location}/policyBindings/{policy_binding_id}
  • projects/{project_number}/locations/{location}/policyBindings/{policy_binding_id}
  • folders/{folder_id}/locations/{location}/policyBindings/{policy_binding_id}
  • organizations/{organization_id}/locations/{location}/policyBindings/{policy_binding_id}

string name = 1 [(.google.api.field_behavior) = IDENTIFIER];

Returns
Type Description
String

The name.

getNameBytes()

public ByteString getNameBytes()

Identifier. The name of the policy binding, in the format {binding_parent/locations/{location}/policyBindings/{policy_binding_id}. The binding parent is the closest Resource Manager resource (project, folder, or organization) to the binding target.

Format:

  • projects/{project_id}/locations/{location}/policyBindings/{policy_binding_id}
  • projects/{project_number}/locations/{location}/policyBindings/{policy_binding_id}
  • folders/{folder_id}/locations/{location}/policyBindings/{policy_binding_id}
  • organizations/{organization_id}/locations/{location}/policyBindings/{policy_binding_id}

string name = 1 [(.google.api.field_behavior) = IDENTIFIER];

Returns
Type Description
ByteString

The bytes for name.

getPolicy()

public String getPolicy()

Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same organization.

string policy = 7 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Returns
Type Description
String

The policy.

getPolicyBytes()

public ByteString getPolicyBytes()

Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same organization.

string policy = 7 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Returns
Type Description
ByteString

The bytes for policy.

getPolicyKind()

public PolicyBinding.PolicyKind getPolicyKind()

Immutable. The kind of the policy to attach in this binding. This field must be one of the following:

  • Left empty (will be automatically set to the policy kind)
  • The input policy kind

.google.iam.v3.PolicyBinding.PolicyKind policy_kind = 11 [(.google.api.field_behavior) = IMMUTABLE];

Returns
Type Description
PolicyBinding.PolicyKind

The policyKind.

getPolicyKindValue()

public int getPolicyKindValue()

Immutable. The kind of the policy to attach in this binding. This field must be one of the following:

  • Left empty (will be automatically set to the policy kind)
  • The input policy kind

.google.iam.v3.PolicyBinding.PolicyKind policy_kind = 11 [(.google.api.field_behavior) = IMMUTABLE];

Returns
Type Description
int

The enum numeric value on the wire for policyKind.

getPolicyUid()

public String getPolicyUid()

Output only. The globally unique ID of the policy to be bound.

string policy_uid = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
String

The policyUid.

getPolicyUidBytes()

public ByteString getPolicyUidBytes()

Output only. The globally unique ID of the policy to be bound.

string policy_uid = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
ByteString

The bytes for policyUid.

getTarget()

public PolicyBinding.Target getTarget()

Required. Immutable. Target is the full resource name of the resource to which the policy will be bound. Immutable once set.

.google.iam.v3.PolicyBinding.Target target = 6 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Returns
Type Description
PolicyBinding.Target

The target.

getTargetBuilder()

public PolicyBinding.Target.Builder getTargetBuilder()

Required. Immutable. Target is the full resource name of the resource to which the policy will be bound. Immutable once set.

.google.iam.v3.PolicyBinding.Target target = 6 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Returns
Type Description
PolicyBinding.Target.Builder

getTargetOrBuilder()

public PolicyBinding.TargetOrBuilder getTargetOrBuilder()

Required. Immutable. Target is the full resource name of the resource to which the policy will be bound. Immutable once set.

.google.iam.v3.PolicyBinding.Target target = 6 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Returns
Type Description
PolicyBinding.TargetOrBuilder

getUid()

public String getUid()

Output only. The globally unique ID of the policy binding. Assigned when the policy binding is created.

string uid = 2 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... }

Returns
Type Description
String

The uid.

getUidBytes()

public ByteString getUidBytes()

Output only. The globally unique ID of the policy binding. Assigned when the policy binding is created.

string uid = 2 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... }

Returns
Type Description
ByteString

The bytes for uid.

getUpdateTime()

public Timestamp getUpdateTime()

Output only. The time when the policy binding was most recently updated.

.google.protobuf.Timestamp update_time = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
Timestamp

The updateTime.

getUpdateTimeBuilder()

public Timestamp.Builder getUpdateTimeBuilder()

Output only. The time when the policy binding was most recently updated.

.google.protobuf.Timestamp update_time = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
Builder

getUpdateTimeOrBuilder()

public TimestampOrBuilder getUpdateTimeOrBuilder()

Output only. The time when the policy binding was most recently updated.

.google.protobuf.Timestamp update_time = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
TimestampOrBuilder

hasCondition()

public boolean hasCondition()

Optional. The condition to apply to the policy binding. When set, the expression field in the Expr must include from 1 to 10 subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or "!"(Logical NOT) operators and cannot contain more than 250 characters.

The condition is currently only supported when bound to policies of kind principal access boundary.

When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are principal.type and principal.subject. An example expression is: "principal.type == 'iam.googleapis.com/ServiceAccount'" or "principal.subject == 'bob@example.com'".

Allowed operations for principal.subject:

  • principal.subject == <principal subject string>
  • principal.subject != <principal subject string>
  • principal.subject in [<list of principal subjects>]
  • principal.subject.startsWith(<string>)
  • principal.subject.endsWith(<string>)

    Allowed operations for principal.type:

  • principal.type == <principal type string>

  • principal.type != <principal type string>
  • principal.type in [<list of principal types>]

    Supported principal types are Workspace, Workforce Pool, Workload Pool and Service Account. Allowed string must be one of:

  • iam.googleapis.com/WorkspaceIdentity

  • iam.googleapis.com/WorkforcePoolIdentity
  • iam.googleapis.com/WorkloadPoolIdentity
  • iam.googleapis.com/ServiceAccount

.google.type.Expr condition = 8 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
boolean

Whether the condition field is set.

hasCreateTime()

public boolean hasCreateTime()

Output only. The time when the policy binding was created.

.google.protobuf.Timestamp create_time = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
boolean

Whether the createTime field is set.

hasTarget()

public boolean hasTarget()

Required. Immutable. Target is the full resource name of the resource to which the policy will be bound. Immutable once set.

.google.iam.v3.PolicyBinding.Target target = 6 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Returns
Type Description
boolean

Whether the target field is set.

hasUpdateTime()

public boolean hasUpdateTime()

Output only. The time when the policy binding was most recently updated.

.google.protobuf.Timestamp update_time = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
boolean

Whether the updateTime field is set.

internalGetFieldAccessorTable()

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

internalGetMapFieldReflection(int number)

protected MapFieldReflectionAccessor internalGetMapFieldReflection(int number)
Parameter
Name Description
number int
Returns
Type Description
com.google.protobuf.MapFieldReflectionAccessor
Overrides
com.google.protobuf.GeneratedMessageV3.Builder.internalGetMapFieldReflection(int)

internalGetMutableMapFieldReflection(int number)

protected MapFieldReflectionAccessor internalGetMutableMapFieldReflection(int number)
Parameter
Name Description
number int
Returns
Type Description
com.google.protobuf.MapFieldReflectionAccessor
Overrides
com.google.protobuf.GeneratedMessageV3.Builder.internalGetMutableMapFieldReflection(int)

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

mergeCondition(Expr value)

public PolicyBinding.Builder mergeCondition(Expr value)

Optional. The condition to apply to the policy binding. When set, the expression field in the Expr must include from 1 to 10 subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or "!"(Logical NOT) operators and cannot contain more than 250 characters.

The condition is currently only supported when bound to policies of kind principal access boundary.

When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are principal.type and principal.subject. An example expression is: "principal.type == 'iam.googleapis.com/ServiceAccount'" or "principal.subject == 'bob@example.com'".

Allowed operations for principal.subject:

  • principal.subject == <principal subject string>
  • principal.subject != <principal subject string>
  • principal.subject in [<list of principal subjects>]
  • principal.subject.startsWith(<string>)
  • principal.subject.endsWith(<string>)

    Allowed operations for principal.type:

  • principal.type == <principal type string>

  • principal.type != <principal type string>
  • principal.type in [<list of principal types>]

    Supported principal types are Workspace, Workforce Pool, Workload Pool and Service Account. Allowed string must be one of:

  • iam.googleapis.com/WorkspaceIdentity

  • iam.googleapis.com/WorkforcePoolIdentity
  • iam.googleapis.com/WorkloadPoolIdentity
  • iam.googleapis.com/ServiceAccount

.google.type.Expr condition = 8 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
value com.google.type.Expr
Returns
Type Description
PolicyBinding.Builder

mergeCreateTime(Timestamp value)

public PolicyBinding.Builder mergeCreateTime(Timestamp value)

Output only. The time when the policy binding was created.

.google.protobuf.Timestamp create_time = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
value Timestamp
Returns
Type Description
PolicyBinding.Builder

mergeFrom(PolicyBinding other)

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

mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

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

mergeFrom(Message other)

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

mergeTarget(PolicyBinding.Target value)

public PolicyBinding.Builder mergeTarget(PolicyBinding.Target value)

Required. Immutable. Target is the full resource name of the resource to which the policy will be bound. Immutable once set.

.google.iam.v3.PolicyBinding.Target target = 6 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Parameter
Name Description
value PolicyBinding.Target
Returns
Type Description
PolicyBinding.Builder

mergeUnknownFields(UnknownFieldSet unknownFields)

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

mergeUpdateTime(Timestamp value)

public PolicyBinding.Builder mergeUpdateTime(Timestamp value)

Output only. The time when the policy binding was most recently updated.

.google.protobuf.Timestamp update_time = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
value Timestamp
Returns
Type Description
PolicyBinding.Builder

putAllAnnotations(Map<String,String> values)

public PolicyBinding.Builder putAllAnnotations(Map<String,String> values)

Optional. User-defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size limitations

map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
values Map<String,String>
Returns
Type Description
PolicyBinding.Builder

putAnnotations(String key, String value)

public PolicyBinding.Builder putAnnotations(String key, String value)

Optional. User-defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size limitations

map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL];

Parameters
Name Description
key String
value String
Returns
Type Description
PolicyBinding.Builder

removeAnnotations(String key)

public PolicyBinding.Builder removeAnnotations(String key)

Optional. User-defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size limitations

map<string, string> annotations = 5 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
key String
Returns
Type Description
PolicyBinding.Builder

setCondition(Expr value)

public PolicyBinding.Builder setCondition(Expr value)

Optional. The condition to apply to the policy binding. When set, the expression field in the Expr must include from 1 to 10 subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or "!"(Logical NOT) operators and cannot contain more than 250 characters.

The condition is currently only supported when bound to policies of kind principal access boundary.

When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are principal.type and principal.subject. An example expression is: "principal.type == 'iam.googleapis.com/ServiceAccount'" or "principal.subject == 'bob@example.com'".

Allowed operations for principal.subject:

  • principal.subject == <principal subject string>
  • principal.subject != <principal subject string>
  • principal.subject in [<list of principal subjects>]
  • principal.subject.startsWith(<string>)
  • principal.subject.endsWith(<string>)

    Allowed operations for principal.type:

  • principal.type == <principal type string>

  • principal.type != <principal type string>
  • principal.type in [<list of principal types>]

    Supported principal types are Workspace, Workforce Pool, Workload Pool and Service Account. Allowed string must be one of:

  • iam.googleapis.com/WorkspaceIdentity

  • iam.googleapis.com/WorkforcePoolIdentity
  • iam.googleapis.com/WorkloadPoolIdentity
  • iam.googleapis.com/ServiceAccount

.google.type.Expr condition = 8 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
value com.google.type.Expr
Returns
Type Description
PolicyBinding.Builder

setCondition(Expr.Builder builderForValue)

public PolicyBinding.Builder setCondition(Expr.Builder builderForValue)

Optional. The condition to apply to the policy binding. When set, the expression field in the Expr must include from 1 to 10 subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or "!"(Logical NOT) operators and cannot contain more than 250 characters.

The condition is currently only supported when bound to policies of kind principal access boundary.

When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are principal.type and principal.subject. An example expression is: "principal.type == 'iam.googleapis.com/ServiceAccount'" or "principal.subject == 'bob@example.com'".

Allowed operations for principal.subject:

  • principal.subject == <principal subject string>
  • principal.subject != <principal subject string>
  • principal.subject in [<list of principal subjects>]
  • principal.subject.startsWith(<string>)
  • principal.subject.endsWith(<string>)

    Allowed operations for principal.type:

  • principal.type == <principal type string>

  • principal.type != <principal type string>
  • principal.type in [<list of principal types>]

    Supported principal types are Workspace, Workforce Pool, Workload Pool and Service Account. Allowed string must be one of:

  • iam.googleapis.com/WorkspaceIdentity

  • iam.googleapis.com/WorkforcePoolIdentity
  • iam.googleapis.com/WorkloadPoolIdentity
  • iam.googleapis.com/ServiceAccount

.google.type.Expr condition = 8 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
builderForValue com.google.type.Expr.Builder
Returns
Type Description
PolicyBinding.Builder

setCreateTime(Timestamp value)

public PolicyBinding.Builder setCreateTime(Timestamp value)

Output only. The time when the policy binding was created.

.google.protobuf.Timestamp create_time = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
value Timestamp
Returns
Type Description
PolicyBinding.Builder

setCreateTime(Timestamp.Builder builderForValue)

public PolicyBinding.Builder setCreateTime(Timestamp.Builder builderForValue)

Output only. The time when the policy binding was created.

.google.protobuf.Timestamp create_time = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
builderForValue Builder
Returns
Type Description
PolicyBinding.Builder

setDisplayName(String value)

public PolicyBinding.Builder setDisplayName(String value)

Optional. The description of the policy binding. Must be less than or equal to 63 characters.

string display_name = 4 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
value String

The displayName to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setDisplayNameBytes(ByteString value)

public PolicyBinding.Builder setDisplayNameBytes(ByteString value)

Optional. The description of the policy binding. Must be less than or equal to 63 characters.

string display_name = 4 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
value ByteString

The bytes for displayName to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setEtag(String value)

public PolicyBinding.Builder setEtag(String value)

Optional. The etag for the policy binding. If this is provided on update, it must match the server's etag.

string etag = 3 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
value String

The etag to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setEtagBytes(ByteString value)

public PolicyBinding.Builder setEtagBytes(ByteString value)

Optional. The etag for the policy binding. If this is provided on update, it must match the server's etag.

string etag = 3 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
value ByteString

The bytes for etag to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setField(Descriptors.FieldDescriptor field, Object value)

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

setName(String value)

public PolicyBinding.Builder setName(String value)

Identifier. The name of the policy binding, in the format {binding_parent/locations/{location}/policyBindings/{policy_binding_id}. The binding parent is the closest Resource Manager resource (project, folder, or organization) to the binding target.

Format:

  • projects/{project_id}/locations/{location}/policyBindings/{policy_binding_id}
  • projects/{project_number}/locations/{location}/policyBindings/{policy_binding_id}
  • folders/{folder_id}/locations/{location}/policyBindings/{policy_binding_id}
  • organizations/{organization_id}/locations/{location}/policyBindings/{policy_binding_id}

string name = 1 [(.google.api.field_behavior) = IDENTIFIER];

Parameter
Name Description
value String

The name to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setNameBytes(ByteString value)

public PolicyBinding.Builder setNameBytes(ByteString value)

Identifier. The name of the policy binding, in the format {binding_parent/locations/{location}/policyBindings/{policy_binding_id}. The binding parent is the closest Resource Manager resource (project, folder, or organization) to the binding target.

Format:

  • projects/{project_id}/locations/{location}/policyBindings/{policy_binding_id}
  • projects/{project_number}/locations/{location}/policyBindings/{policy_binding_id}
  • folders/{folder_id}/locations/{location}/policyBindings/{policy_binding_id}
  • organizations/{organization_id}/locations/{location}/policyBindings/{policy_binding_id}

string name = 1 [(.google.api.field_behavior) = IDENTIFIER];

Parameter
Name Description
value ByteString

The bytes for name to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setPolicy(String value)

public PolicyBinding.Builder setPolicy(String value)

Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same organization.

string policy = 7 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Parameter
Name Description
value String

The policy to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setPolicyBytes(ByteString value)

public PolicyBinding.Builder setPolicyBytes(ByteString value)

Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same organization.

string policy = 7 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Parameter
Name Description
value ByteString

The bytes for policy to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setPolicyKind(PolicyBinding.PolicyKind value)

public PolicyBinding.Builder setPolicyKind(PolicyBinding.PolicyKind value)

Immutable. The kind of the policy to attach in this binding. This field must be one of the following:

  • Left empty (will be automatically set to the policy kind)
  • The input policy kind

.google.iam.v3.PolicyBinding.PolicyKind policy_kind = 11 [(.google.api.field_behavior) = IMMUTABLE];

Parameter
Name Description
value PolicyBinding.PolicyKind

The policyKind to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setPolicyKindValue(int value)

public PolicyBinding.Builder setPolicyKindValue(int value)

Immutable. The kind of the policy to attach in this binding. This field must be one of the following:

  • Left empty (will be automatically set to the policy kind)
  • The input policy kind

.google.iam.v3.PolicyBinding.PolicyKind policy_kind = 11 [(.google.api.field_behavior) = IMMUTABLE];

Parameter
Name Description
value int

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

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setPolicyUid(String value)

public PolicyBinding.Builder setPolicyUid(String value)

Output only. The globally unique ID of the policy to be bound.

string policy_uid = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
value String

The policyUid to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setPolicyUidBytes(ByteString value)

public PolicyBinding.Builder setPolicyUidBytes(ByteString value)

Output only. The globally unique ID of the policy to be bound.

string policy_uid = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
value ByteString

The bytes for policyUid to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

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

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

setTarget(PolicyBinding.Target value)

public PolicyBinding.Builder setTarget(PolicyBinding.Target value)

Required. Immutable. Target is the full resource name of the resource to which the policy will be bound. Immutable once set.

.google.iam.v3.PolicyBinding.Target target = 6 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Parameter
Name Description
value PolicyBinding.Target
Returns
Type Description
PolicyBinding.Builder

setTarget(PolicyBinding.Target.Builder builderForValue)

public PolicyBinding.Builder setTarget(PolicyBinding.Target.Builder builderForValue)

Required. Immutable. Target is the full resource name of the resource to which the policy will be bound. Immutable once set.

.google.iam.v3.PolicyBinding.Target target = 6 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED];

Parameter
Name Description
builderForValue PolicyBinding.Target.Builder
Returns
Type Description
PolicyBinding.Builder

setUid(String value)

public PolicyBinding.Builder setUid(String value)

Output only. The globally unique ID of the policy binding. Assigned when the policy binding is created.

string uid = 2 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... }

Parameter
Name Description
value String

The uid to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setUidBytes(ByteString value)

public PolicyBinding.Builder setUidBytes(ByteString value)

Output only. The globally unique ID of the policy binding. Assigned when the policy binding is created.

string uid = 2 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_info) = { ... }

Parameter
Name Description
value ByteString

The bytes for uid to set.

Returns
Type Description
PolicyBinding.Builder

This builder for chaining.

setUnknownFields(UnknownFieldSet unknownFields)

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

setUpdateTime(Timestamp value)

public PolicyBinding.Builder setUpdateTime(Timestamp value)

Output only. The time when the policy binding was most recently updated.

.google.protobuf.Timestamp update_time = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
value Timestamp
Returns
Type Description
PolicyBinding.Builder

setUpdateTime(Timestamp.Builder builderForValue)

public PolicyBinding.Builder setUpdateTime(Timestamp.Builder builderForValue)

Output only. The time when the policy binding was most recently updated.

.google.protobuf.Timestamp update_time = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
builderForValue Builder
Returns
Type Description
PolicyBinding.Builder