1
0
Fork 0
mirror of https://github.com/imjasonh/gcloud-help synced 2026-07-08 10:35:03 +00:00
gcloud-help/gcloud/alpha/projects/add-iam-policy-binding
2024-07-31 09:35:16 +00:00

140 lines
5.7 KiB
Text

NAME
gcloud alpha projects add-iam-policy-binding - add IAM policy binding for a
project
SYNOPSIS
gcloud alpha projects add-iam-policy-binding PROJECT_ID --member=PRINCIPAL
--role=ROLE
[--condition=[KEY=VALUE,...] | --condition-from-file=PATH_TO_FILE]
[GCLOUD_WIDE_FLAG ...]
DESCRIPTION
(ALPHA) Adds a policy binding to the IAM policy of a project, given a
project ID and the binding. One binding consists of a member, a role, and
an optional condition.
EXAMPLES
To add an IAM policy binding for the role of roles/editor for the user
test-user@gmail.com on a project with identifier example-project-id-1, run:
$ gcloud alpha projects add-iam-policy-binding \
example-project-id-1 --member='user:test-user@gmail.com' \
--role='roles/editor'
To add an IAM policy binding for the role of roles/editor to the service
account test-proj1@example.domain.com on a project with identifier
example-project-id-1, run:
$ gcloud alpha projects add-iam-policy-binding \
example-project-id-1 \
--member='serviceAccount:test-proj1@example.domain.com' \
--role='roles/editor'
To add an IAM policy binding that expires at the end of the year 2021 for
the role of roles/browser and the user test-user@gmail.com on a project
with identifier example-project-id-1, run:
$ gcloud alpha projects add-iam-policy-binding \
example-project-id-1 --member='user:test-user@gmail.com' \
--role='roles/browser' \
--condition='expression=request.time <
timestamp("2019-01-01T00:00:00Z"),title=expires_end_of_2021,descrip\
tion=Expires at midnight on 2021-12-31'
See https://cloud.google.com/iam/docs/managing-policies for details of
policy role and member types.
POSITIONAL ARGUMENTS
Project resource - The project to add the IAM policy binding. This
represents a Cloud resource.
This must be specified.
PROJECT_ID
ID of the project or fully qualified identifier for the project.
To set the project_id attribute:
▸ provide the argument project_id on the command line.
REQUIRED FLAGS
--member=PRINCIPAL
The principal 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.
Some resources also accept 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 principal. 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 can 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=PATH_TO_FILE
Path to a local JSON or YAML file that defines the condition. To see
available fields, see the help for --condition. Use a full or
relative path to a local file containing the value of condition.
GCLOUD WIDE FLAGS
These flags are available to all commands: --access-token-file, --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 cloudresourcemanager/v1 API. The full documentation
for this API can be found at: https://cloud.google.com/resource-manager
NOTES
This command is currently in alpha and might change without notice. If this
command fails with API permission errors despite specifying the correct
project, you might be trying to access an API with an invitation-only early
access allowlist. These variants are also available:
$ gcloud projects add-iam-policy-binding
$ gcloud beta projects add-iam-policy-binding