Модуль google.cloud.gcp_storage_bucket_access_control – Создаёт GCP BucketAccessControl
Примечание
Этот модуль является частью коллекции google.cloud (версия 1.4.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install google.cloud. Для использования этого модуля требуются дополнительные зависимости. Подробности см. в разделе Требования.
Для использования в плейбуке укажите: google.cloud.gcp_storage_bucket_access_control.
Описание
- Ресурс BucketAccessControls представляет списки управления доступом (ACL) для ведёр в Google Cloud Storage. ACL позволяют указать, кто имеет доступ к данным и в какой степени.
- Существует три роли, которые могут быть назначены сущности: READERы могут получить ведро (хотя свойство acl не будет возвращено) и перечислить объекты ведра. WRITERы являются READERами и могут вставлять объекты в ведро и удалять объекты ведра. OWNERы являются WRITERами и могут получить свойство acl ведра, обновить ведро и вызвать все методы BucketAccessControls для ведра. Более подробная информация доступна в разделе Управление доступом, с оговоркой, что в этом API используются READER, WRITER и OWNER вместо READ, WRITE и FULL_CONTROL.
Требования
Ниже приведены требования, необходимые на хосте, который выполняет этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
Параметр | Комментарии |
|---|---|
access_token строка | Токен доступа OAuth2, если тип аутентификации — accesstoken. |
auth_kind строка / обязательно | Тип используемых учетных данных. Варианты:
|
bucket словарь / обязательно | Имя ведра. Это поле представляет ссылку на ресурс ведра в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом «name» и значением имени вашего ресурса. Во-вторых, вы можете добавить `register: name-of-resource` к задаче gcp_storage_bucket, а затем установить это поле bucket в «{{ name-of-resource }}» |
entity строка / обязательно | Сущность, обладающая правом доступа, в одном из следующих форматов: user-userId user-email group-groupId group-email domain-domain project-team-projectId allUsers allAuthenticatedUsers Примеры: Пользователь liz@example.com будет user-liz@example.com. Группа example@googlegroups.com будет group-example@googlegroups.com. Для ссылки на всех членов домена Google Apps для бизнеса example.com, сущность будет domain-example.com. |
env_type строка | Указывает, в какой среде Ansible выполняется этот модуль. Это поле не следует устанавливать, если вы не знаете, что делаете. Это поле только изменяет строку User Agent для всех запросов к API. |
project строка | Проект Google Cloud Platform, который необходимо использовать. |
role строка | Разрешение доступа для сущности. Некоторые допустимые значения: «OWNER», «READER», «WRITER» |
scopes список / элементы=строка | Массив используемых областей |
service_account_contents jsonarg | Содержимое файла JSON учетной записи службы, либо в виде словаря, либо в виде JSON-строки, которая его представляет. |
service_account_email строка | Дополнительный адрес электронной почты учетной записи службы, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию. |
service_account_file путь | Путь к файлу JSON учетной записи службы, если тип serviceaccount выбран в качестве типа. |
state строка | Определяет, должен ли указанный объект существовать в GCP Варианты:
|
Примечания
Примечание
- Ссылка на API: https://cloud.google.com/storage/docs/json_api/v1/bucketAccessControls
- Официальная документация: https://cloud.google.com/storage/docs/access-control/lists
- для аутентификации можно установить service_account_file с помощью переменной среды
GCP_SERVICE_ACCOUNT_FILE. - для аутентификации можно установить service_account_contents с помощью переменной среды
GCP_SERVICE_ACCOUNT_CONTENTS. - Для аутентификации можно установить service_account_email с помощью переменной среды
GCP_SERVICE_ACCOUNT_EMAIL. - Для аутентификации можно установить access_token с помощью переменной среды
GCP_ACCESS_TOKEN. - Для аутентификации можно установить auth_kind с помощью переменной среды
GCP_AUTH_KIND. - Для аутентификации можно установить scopes с помощью переменной среды
GCP_SCOPES. - Значения переменных среды будут использованы только в том случае, если значения в плейбуке не заданы.
- Параметры service_account_email и service_account_file взаимоисключают друг друга.
Примеры
- name: create a bucket
google.cloud.gcp_storage_bucket:
name: "{{ resource_name }}"
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
state: present
register: bucket
- name: create a bucket access control
google.cloud.gcp_storage_bucket_access_control:
bucket: "{{ bucket }}"
entity: user-alexstephen@google.com
role: WRITER
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для данного модуля:
Ключ | Описание |
|---|---|
bucket словарь | Имя ведра. Возвращается: успех |
domain строка | Домен, связанный с сущностью. Возвращается: успех |
строка | Электронный адрес, связанный с сущностью. Возвращается: успех |
entity строка | Сущность, имеющая разрешение, в одном из следующих форматов: user-userId user-email group-groupId group-email domain-domain project-team-projectId allUsers allAuthenticatedUsers Примеры: Пользователь liz@example.com будет user-liz@example.com. Группа example@googlegroups.com будет group-example@googlegroups.com. Для ссылки на всех членов домена Google Apps для бизнеса example.com, сущность будет domain-example.com. Возвращается: успех |
entityId строка | Идентификатор сущности. Возвращается: успех |
id строка | Идентификатор записи контроля доступа. Возвращается: успех |
projectTeam сложное | Команда проекта, связанная с сущностью. Возвращается: успех |
|
projectNumber строка |
Команда проекта, связанная с сущностью. Возвращается: успех |
|
team строка |
Команда. Возвращается: успех |
role строка | Разрешение доступа для сущности. Возвращается: успех |
Ссылки на сборку
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/google/cloud/gcp_storage_bucket_access_control_module.html