gcloud alpha compute reservations add-iam-policy-binding

NAME
gcloud alpha compute reservations add-iam-policy-binding - add IAM policy binding to a Google Compute Engine reservation
SYNOPSIS
gcloud alpha compute reservations add-iam-policy-binding (RESERVATION : --zone=ZONE) --member=MEMBER --role=ROLE [--condition=[KEY=VALUE,…]     | --condition-from-file=CONDITION_FROM_FILE] [GCLOUD_WIDE_FLAG]
DESCRIPTION
(ALPHA) Add an IAM policy binding to the IAM policy of a Google Compute Engine reservation. One binding consists of a member, a role, and an optional condition.
POSITIONAL ARGUMENTS
Reservation resource - The reservation for which to add IAM policy binding to. The arguments in this group can be used to specify the attributes of this resource. (NOTE) Some attributes are not given arguments in this group but can be set in other ways. To set the [project] attribute: provide the argument [reservation] on the command line with a fully specified name; set the property [core/project]; provide the argument [--project] on the command line. This must be specified.
RESERVATION
ID of the reservation or fully qualified identifier for the reservation. This positional must be specified if any of the other arguments in this group are specified.
--zone=ZONE
The name of the Google Compute Engine zone.
REQUIRED FLAGS
--member=MEMBER
The member to add the binding for. Should be of the form user|group|serviceAccount:email or domain:domain.

Examples: user:test-user@gmail.com, group:admins@example.com, serviceAccount:test123@example.domain.com, or domain:example.domain.com.

Can also be one of the following special values:

  • allUsers - Special identifier that represents anyone who is on the internet, with or without a Google account.
  • allAuthenticatedUsers - Special identifier that represents anyone who is authenticated with a Google account or a service account.
--role=ROLE
Define the role of the member.
OPTIONAL FLAGS
At most one of these may be specified:
--condition=[KEY=VALUE,…]
The condition of the binding to be added. When the condition is explicitly specified as None (--condition=None), a binding without a condition is added. When the condition is specified and is not None, --role cannot be a primitive role. Primitive roles are roles/editor, roles/owner, and roles/viewer.
expression
(Required) Expression of the condition which evaluates to True or False. This uses a subset of Common Expression Language syntax.
title
(Required) A short string describing the purpose of the expression.
description
(Optional) Additional description for the expression.

NOTE: An unsatisfied condition will not allow access via this binding.

--condition-from-file=CONDITION_FROM_FILE
Path to a local JSON or YAML file that defines the condition. To see available fields, see the help for --condition.
GCLOUD WIDE FLAGS
These flags are available to all commands: --account, --billing-project, --configuration, --flags-file, --flatten, --format, --help, --impersonate-service-account, --log-http, --project, --quiet, --trace-token, --user-output-enabled, --verbosity.

Run $ gcloud help for details.

API REFERENCE
This command uses the compute/alpha API. The full documentation for this API can be found at: https://developers.google.com/compute/docs/reference/latest/
EXAMPLES
To add an IAM policy binding for the role of 'roles/compute.securityAdmin' for the user 'test-user@gmail.com' with reservation 'my-reservation' and zone 'ZONE', run:
gcloud alpha compute reservations add-iam-policy-binding my-reservation --zone=ZONE --member='user:test-user@gmail.com' --role='roles/compute.securityAdmin'

To add an IAM policy binding which expires at the end of the year 2018 for the role of 'roles/compute.securityAdmin' and the user 'test-user@gmail.com' with reservation 'my-reservation' and zone 'ZONE', run:

gcloud alpha compute reservations add-iam-policy-binding my-reservation --zone=ZONE --member='user:test-user@gmail.com' --role='roles/compute.securityAdmin' --condition='expression=request.time <
   timestamp("2019-01-01T00:00:00Z"),title=expires_end_of_2018,descrip  tion=Expires at midnight on 2018-12-31'

See https://cloud.google.com/iam/docs/managing-policies for details of policy role and member types.

NOTES
This command is currently in ALPHA and may change without notice. If this command fails with API permission errors despite specifying the right project, you may be trying to access an API with an invitation-only early access whitelist. These variants are also available:
gcloud compute reservations add-iam-policy-binding
gcloud beta compute reservations add-iam-policy-binding