etag property
etag
is used for optimistic concurrency control as a way to help prevent
simultaneous updates of a policy from overwriting each other.
It is strongly suggested that systems make use of the etag
in the
read-modify-write cycle to perform policy updates in order to avoid race
conditions: An etag
is returned in the response to getIamPolicy
, and
systems are expected to put that etag in the request to setIamPolicy
to
ensure that their change will be applied to the same version of the
policy. Important: If you use IAM Conditions, you must include the
etag
field whenever you call setIamPolicy
. If you omit this field,
then IAM allows you to overwrite a version 3
policy with a version 1
policy, and all of the conditions in the version 3
policy are lost.
Implementation
core.String? etag;