Spec-Zone.ru › Ansible

Модуль openstack.cloud.application_credential — управление учётными данными приложения OpenStack Identity (Keystone)

Примечание

Этот модуль входит в коллекцию openstack.cloud (версия 2.5.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install openstack.cloud. Для использования этого модуля необходимы дополнительные компоненты; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: openstack.cloud.application_credential.

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Создание или удаление учётных данных приложения OpenStack Identity (Keystone).
  • Если параметр secret не задан, секрет будет сгенерирован и возвращён
  • в ответе. Изменить существующие учётные данные нельзя, поэтому запуск этого модуля
  • для существующих учётных данных приведёт к их удалению и повторному созданию.
  • Это следует учитывать при генерации секрета, поскольку секрет
  • будет меняться при каждом запуске модуля.

Требования

Для работы этого модуля на узле, где он выполняется, необходимы перечисленные ниже компоненты.

  • python >= 3.6
  • openstacksdk >= 1.0.0

Параметры

Параметр

Комментарии

access_rules

list / elements=dictionary

Список правил доступа, каждое из которых содержит метод запроса, путь и службу.

method

string / обязательный

Метод HTTP

path

string / обязательный

Путь в URL доступа

service

string / обязательный

Имя конечной точки службы

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

псевдонимы: cacert

string

Путь к пакету сертификатов CA, который можно использовать для проверки запросов API SSL.

client_cert

псевдонимы: cert

string

Путь к клиентскому сертификату, используемому при обмене данными SSL.

client_key

псевдонимы: key

string

Путь к клиентскому ключу, используемому при обмене данными SSL.

cloud

any

Именованное облако или конфигурация облака, с которыми нужно работать. Если значение cloud — строка, она ссылается на именованную конфигурацию облака, заданную в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для auth и auth_type. Этот параметр не требуется, если задан auth или присутствуют переменные среды OpenStack OS_*. Если значение cloud — словарь, он содержит полную конфигурацию облака, аналогичную разделу файла clouds.yaml.

description

string

Описание учётных данных приложения.

expires_at

string

Задаёт дату истечения срока действия учётных данных приложения,

формат: YYYY-mm-ddTHH:MM:SS

(если значение не указано, срок действия учётных данных приложения не истекает).

interface

псевдонимы: endpoint_type

string

Тип URL конечной точки, используемой для получения данных из каталога служб.

Варианты:

  • "admin"
  • "internal"
  • "public" ← (по умолчанию)

name

string / обязательный

Имя учётных данных приложения.

region_name

string

Имя региона.

roles

list / elements=dictionary

Роли для авторизации (имя или идентификатор).

domain_id

string

Идентификатор домена

id

string

Идентификатор роли

name

string

Имя роли

sdk_log_level

string

Уровень ведения журнала OpenStackSDK

Варианты:

  • "INFO" ← (по умолчанию)
  • "DEBUG"

sdk_log_path

string

Путь к файлу журнала OpenStackSDK. Если значение пустое, журнал не ведётся.

secret

string

Секрет для аутентификации

(если не указан, будет сгенерирован).

state

string

Должен ли ресурс присутствовать или отсутствовать.

Учётные данные приложения неизменяемы, поэтому запуск модуля с уже существующими учётными данными

приведёт к их удалению и повторному созданию.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

timeout

integer

Время ожидания Ansible запрошенного ресурса.

По умолчанию: 180

unrestricted

boolean

Разрешить учётным данным приложения создавать и удалять другие учётные данные

приложений и трасты (это потенциально опасное поведение, которое

по умолчанию отключено).

Варианты:

  • false ← (по умолчанию)
  • true

validate_certs

псевдонимы: verify

boolean

Следует ли проверять запросы API SSL.

До Ansible 2.3 значение по умолчанию было true.

Варианты:

  • false
  • true

wait

boolean

Должен ли Ansible ожидать завершения операции с запрошенным ресурсом.

Варианты:

  • false
  • true ← (по умолчанию)

Примечания

Примечание

  • Вместо явного указания значений можно использовать стандартные переменные среды OpenStack, например OS_USERNAME.
  • Данные аутентификации обрабатываются openstacksdk. Это означает, что значения могут быть взяты из файла конфигурации yaml в /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных среды и, наконец, из явных параметров плейбука. Дополнительные сведения см. на странице https://docs.openstack.org/openstacksdk/

Примеры

- name: Create application credential
  openstack.cloud.application_credential:
    cloud: mycloud
    description: demodescription
    name: democreds
    state: present

- name: Create application credential with expiration, access rules and roles
  openstack.cloud.application_credential:
    cloud: mycloud
    description: demodescription
    name: democreds
    access_rules:
    - service: "compute"
      path: "/v2.1/servers"
      method: "GET"
    expires_at: "2024-02-29T09:29:59"
    roles:
    - name: Member
    state: present

- name: Delete application credential
  openstack.cloud.application_credential:
    cloud: mycloud
    name: democreds
    state: absent

Возвращаемые значения

Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:

Ключ

Описание

application_credential

dictionary

Словарь с описанием проекта.

Возвращается: при успешном выполнении, если значение state — present.

access_rules

list / elements=dictionary

Список объектов access_rules

Возвращается: при успешном выполнении

Пример: [{"id": "edecb6c791d541a3b458199858470d20", "method": "GET", "path": "/v2.1/servers", "service": "compute"}]

description

string

Описание назначения учётных данных приложения.

Возвращается: при успешном выполнении

Пример: "App credential"

expires_at

string

Время истечения срока действия учётных данных приложения в формате UTC, если оно было указано.

Возвращается: при успешном выполнении

Пример: "2024-02-29T09:29:59.000000"

id

string

Идентификатор учётных данных приложения.

Возвращается: при успешном выполнении

Пример: "2e73d1b4f0cb473f920bd54dfce3c26d"

name

string

Имя учётных данных приложения.

Возвращается: при успешном выполнении

Пример: "appcreds"

project_id

string

Идентификатор проекта, для которого созданы учётные данные приложения и к которому будут относиться запросы аутентификации с их использованием.

Возвращается: при успешном выполнении

Пример: "4b633c451ac74233be3721a3635275e5"

roles

list / elements=dictionary

Список одной или нескольких ролей, связанных с проектом этих учётных данных приложения. Токен, использующий эти учётные данные приложения, будет иметь те же роли.

Возвращается: при успешном выполнении

Пример: [{"name": "Member"}]

secret

string

Секрет для аутентификации (если он не указан, возвращается сгенерированное значение).

Возвращается: при успешном выполнении

Пример: "JxE7LajLY75NZgDH1hfu0N_6xS9hQ-Af40W3"

unrestricted

boolean

Флаг, указывающий, можно ли использовать учётные данные приложения для создания или удаления других учётных данных приложения или трастов.

Возвращается: при успешном выполнении

cloud

dictionary

Текущая конфигурация облака, в которой имя пользователя и пароль заменены именем и секретом учётных данных приложения. Её можно передать параметру cloud других задач или записать в файл конфигурации облака OpenStack.

Возвращается: при успешном выполнении, если значение state — present.

Пример: {"auth": {"application_credential_id": "3e73d1b4f0cb473f920bd54dfce3c26d", "application_credential_secret": "JxE7LajLY75NZgDH1hfu0N_6xS9hQ-Af40W3", "auth_url": "https://192.0.2.1/identity"}, "auth_type": "v3applicationcredential"}

Авторы

  • Специальная группа Ansible по OpenStack

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)

© 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/application_credential_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API