gcloud compute reservations add-iam-policy-binding

NAME
gcloud compute reservations add-iam-policy-binding - add IAM policy binding to a Compute Engine reservation
SYNOPSIS
gcloud 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
Add an IAM policy binding to the IAM policy of a Compute Engine reservation. One binding consists of a member, a role, and an optional condition.
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 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 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.

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. To set the reservation attribute:
  • provide the argument reservation on the command line.

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. To set the zone attribute:
  • provide the argument reservation on the command line with a fully specified name;
  • provide the argument --zone on the command line;
  • set the property compute/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
Role name to assign to the member. The role name is the complete path of a predefined role, such as roles/logging.viewer, or the role ID for a custom role, such as organizations/{ORGANIZATION_ID}/roles/logging.viewer.
OPTIONAL FLAGS
At most one of these may be specified:
--condition=[KEY=VALUE,…]
A condition to include in the binding. 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 basic role. Basic roles are roles/editor, roles/owner, and roles/viewer. For more on conditions, refer to the conditions overview guide: https://cloud.google.com/iam/docs/conditions-overview

When using the --condition flag, include the following key-value pairs:

expression
(Required) Condition expression that evaluates to True or False. This uses a subset of Common Expression Language syntax.

If the condition expression includes a comma, use a different delimiter to separate the key-value pairs. Specify the delimiter before listing the key-value pairs. For example, to specify a colon (:) as the delimiter, do the following: --condition=^:^title=TITLE:expression=EXPRESSION. For more information, see https://cloud.google.com/sdk/gcloud/reference/topic/escaping.

title
(Required) A short string describing the purpose of the expression.
description
(Optional) Additional description for the expression.
--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/v1 API. The full documentation for this API can be found at: https://developers.google.com/compute/docs/reference/latest/
NOTES
These variants are also available:
gcloud alpha compute reservations add-iam-policy-binding
gcloud beta compute reservations add-iam-policy-binding