Модуль openstack.cloud.role_assignment — назначение групп и пользователей OpenStack Identity ролям
Примечание
Этот модуль входит в коллекцию openstack.cloud (версия 2.5.0).
Эта коллекция уже может быть установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install openstack.cloud. Для использования этого модуля требуются дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: openstack.cloud.role_assignment.
Краткое описание
- Назначает и отзывает роли в контексте проекта или домена для пользователей и групп OpenStack Identity (Keystone).
Требования
Следующие требования должны быть выполнены на хосте, на котором выполняется этот модуль.
- python >= 3.6
- openstacksdk >= 1.0.0
Параметры
Параметр | Комментарии |
|---|---|
api_timeout integer | Сколько времени слой сокетов должен ожидать перед истечением времени ожидания вызова API. Если параметр не указан, библиотеке requests ничего не передаётся. |
auth dictionary | Словарь с данными аутентификации, необходимыми стратегии плагина аутентификации облака. Для стандартного плагина password здесь должны быть указаны auth_url, username, password, project_name и данные о доменах (например, user_domain_name или project_domain_name), если облако их поддерживает. Для других плагинов этот параметр должен содержать все необходимые им параметры. Этот параметр не требуется, если указано именованное облако или заданы переменные среды OpenStack OS_*. |
auth_type string | Имя используемого плагина аутентификации. Если облако использует не парольную аутентификацию, здесь следует указать имя плагина и соответствующим образом обновить содержимое параметра auth. |
ca_cert aliases: cacert string | Путь к пакету сертификатов CA, который можно использовать для проверки запросов к API по SSL. |
client_cert aliases: cert string | Путь к сертификату клиента, используемому при обмене данными по SSL. |
client_key aliases: key string | Путь к ключу клиента, используемому при обмене данными по SSL. |
cloud any | Именованное облако или конфигурация облака, с которыми нужно работать. Если cloud — строка, она указывает на именованную конфигурацию облака, определённую в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для auth и auth_type. Этот параметр не требуется, если задан auth или присутствуют переменные среды OpenStack OS_*. Если cloud — словарь, он содержит полную конфигурацию облака, аналогичную разделу в clouds.yaml. |
domain string | Имя или идентификатор домена, в контексте которого назначается роль. Допустимо только для версии keystone 3. Обязателен, если project не указан. Если указан project, параметр domain не используется для определения контекста назначения роли, а служит только для поиска ресурсов. Использование параметра для поиска ресурсов устарело; вместо него используйте group_domain, project_domain, role_domain или user_domain. При определении контекста назначения роли project имеет приоритет над domain, а domain — над system: если указан project, параметры domain и system не используются для назначения роли. Если указан domain, параметр system не используется для назначения роли. |
group string | Имя или идентификатор группы. Допустимо только для версии keystone 3. Если group не указан, необходимо указать user. Нельзя указывать оба параметра одновременно. Для поиска ресурсов группы можно указать group_domain или использовать устаревший параметр domain. |
group_domain string | Имя или идентификатор домена. Допустимо только для версии keystone 3. Используется только для поиска ресурсов группы. |
interface aliases: endpoint_type string | Тип URL конечной точки, получаемой из каталога служб. Варианты:
|
project string | Имя или идентификатор проекта, в контексте которого назначается роль. Если используется версия keystone 2, это значение обязательно. Если указан project, параметр domain не используется для определения контекста назначения роли, а служит только для поиска ресурсов. Для этой цели предпочтительнее использовать group_domain, а не domain. При определении контекста назначения роли project имеет приоритет над domain, а domain — над system: если указан project, параметры domain и system не используются для назначения роли. Если указан domain, параметр system не используется для назначения роли. |
project_domain string | Имя или идентификатор домена. Допустимо только для версии keystone 3. Используется только для поиска ресурсов проекта. |
region_name string | Название региона. |
role string / обязательный | Имя или идентификатор роли. |
role_domain string | Имя или идентификатор домена. Допустимо только для версии keystone 3. Используется только для поиска ресурсов роли. |
sdk_log_level string | Уровень ведения журнала OpenStackSDK Варианты:
|
sdk_log_path string | Путь к файлу журнала OpenStackSDK. Если значение пустое, журнал не ведётся. |
state string | Должны ли роли быть назначены пользователю или отозваны у него. Варианты:
|
system string | Имя системы, в контексте которой назначается роль. Допустимо только для версии keystone 3. Обязателен, если не указаны project и domain. При определении контекста назначения роли project имеет приоритет над domain, а domain — над system: если указан project, параметры domain и system не используются для назначения роли. Если указан domain, параметр system не используется для назначения роли. |
timeout integer | Сколько времени Ansible должен ожидать запрошенный ресурс. По умолчанию: |
user string | Имя или идентификатор пользователя. Если user не указан, необходимо указать group. Нельзя указывать оба параметра одновременно. |
user_domain string | Имя или идентификатор домена. Допустимо только для версии keystone 3. Используется только для поиска ресурсов пользователя. |
validate_certs aliases: verify boolean | Следует ли проверять запросы к API по SSL. До Ansible 2.3 значение по умолчанию было Варианты:
|
wait boolean | Должен ли Ansible ожидать завершения операции с запрошенным ресурсом. Варианты:
|
Примечания
Примечание
- Вместо явного указания значений можно использовать стандартные переменные среды OpenStack, например
OS_USERNAME. - Данные аутентификации обрабатываются openstacksdk. Это означает, что значения могут поступать из файла конфигурации yaml /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных среды и, наконец, из явно заданных параметров плейбуков. Дополнительные сведения см. на странице https://docs.openstack.org/openstacksdk/
Примеры
- name: Grant an admin role on the user admin in the project project1
openstack.cloud.role_assignment:
cloud: mycloud
user: admin
role: admin
project: project1
- name: Revoke the admin role from the user barney in the newyork domain
openstack.cloud.role_assignment:
cloud: mycloud
state: absent
user: barney
role: admin
domain: newyork
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/openstack/cloud/role_assignment_module.html