Class PolicyBinding (1.52.0)

public final class PolicyBinding extends GeneratedMessageV3 implements PolicyBindingOrBuilder

IAM policy binding resource.

Protobuf type google.iam.v3.PolicyBinding

Static Fields

ANNOTATIONS_FIELD_NUMBER

public static final int ANNOTATIONS_FIELD_NUMBER
Field Value
Type Description
int

CONDITION_FIELD_NUMBER

public static final int CONDITION_FIELD_NUMBER
Field Value
Type Description
int

CREATE_TIME_FIELD_NUMBER

public static final int CREATE_TIME_FIELD_NUMBER
Field Value
Type Description
int

DISPLAY_NAME_FIELD_NUMBER

public static final int DISPLAY_NAME_FIELD_NUMBER
Field Value
Type Description
int

ETAG_FIELD_NUMBER

public static final int ETAG_FIELD_NUMBER
Field Value
Type Description
int

NAME_FIELD_NUMBER

public static final int NAME_FIELD_NUMBER
Field Value
Type Description
int

POLICY_FIELD_NUMBER

public static final int POLICY_FIELD_NUMBER
Field Value
Type Description
int

POLICY_KIND_FIELD_NUMBER

public static final int POLICY_KIND_FIELD_NUMBER
Field Value
Type Description
int

POLICY_UID_FIELD_NUMBER

public static final int POLICY_UID_FIELD_NUMBER
Field Value
Type Description
int

TARGET_FIELD_NUMBER

public static final int TARGET_FIELD_NUMBER
Field Value
Type Description
int

UID_FIELD_NUMBER

public static final int UID_FIELD_NUMBER
Field Value
Type Description
int

UPDATE_TIME_FIELD_NUMBER

public static final int UPDATE_TIME_FIELD_NUMBER
Field Value
Type Description
int

Static Methods

getDefaultInstance()

public static PolicyBinding getDefaultInstance()
Returns
Type Description
PolicyBinding

getDescriptor()

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

newBuilder()

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

newBuilder(PolicyBinding prototype)

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

parseDelimitedFrom(InputStream input)

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

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

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

parseFrom(byte[] data)

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

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

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

parseFrom(ByteString data)

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

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

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

parseFrom(CodedInputStream input)

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

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

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

parseFrom(InputStream input)

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

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

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

parseFrom(ByteBuffer data)

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

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

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

parser()

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

Methods

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

equals(Object obj)

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

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.

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.

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

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.

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.

getParserForType()

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

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.

getSerializedSize()

public int getSerializedSize()
Returns
Type Description
int
Overrides

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.

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.

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.

hashCode()

public int hashCode()
Returns
Type Description
int
Overrides

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.internalGetMapFieldReflection(int)

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

newBuilderForType()

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

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

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

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

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

toBuilder()

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

writeTo(CodedOutputStream output)

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