ansible.windows.win_uri – Взаимодействие с веб-сервисами
Примечание
Этот плагин входит в состав коллекции ansible.windows (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install ansible.windows.
Для использования в плейбуке укажите: ansible.windows.win_uri.
Описание
- Взаимодействует с веб-сервисами FTP, HTTP и HTTPS.
- Поддерживает механизмы аутентификации HTTP Digest, Basic и WSSE.
- Для целей, не относящихся к Windows, используйте модуль ansible.builtin.uri вместо этого.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| body raw | Тело HTTP-запроса/ответа веб-сервису. | |
| client_cert string | Путь к клиенту сертификат (.pfx), используемый для аутентификации X509. Этот путь может быть путём к pfx в файловой системе или путём к сертификату PowerShell Cert:\CurrentUser\My\<thumbprint>. Подключение WinRM должно быть аутентифицировано с помощью CredSSP или become используется в задаче, если файл сертификата не защищен паролем.Другие типы аутентификации могут устанавливать client_cert_password, когда сертификат защищен паролем. | |
| client_cert_password string | Пароль для client_cert, если сертификат защищен паролем. | |
| content_type string | Устанавливает заголовок "Content-Type". | |
| creates path | Имя файла; если оно уже существует, этот шаг будет пропущен. | |
| dest path | Вывести тело ответа в файл. | |
| follow_redirects string |
| Следовать ли перенаправлениям модуля. all будет следовать всем перенаправлениям.none не будет следовать ни одному перенаправлению.safe будет следовать только «безопасным» перенаправлениям, где «безопасный» означает, что клиент выполняет только GET или HEAD по URI, на который происходит перенаправление.При следовании перенаправленному URL заголовок Authorization и любые установленные учетные данные будут удалены и не перенаправлены. |
| force_basic_auth boolean |
| По умолчанию заголовок аутентификации отправляется только тогда, когда веб-сервис отвечает на начальный запрос с кодом состояния 401. Поскольку некоторые сервисы basic auth не отправляют 401 должным образом, попытки входа могут завершиться неудачно. Этот параметр принудительно отправляет заголовок Basic аутентификации при первоначальном запросе. |
| headers dictionary | Дополнительные заголовки для установки в запросе. Это должен быть словарь, где ключ — имя заголовка, а значение — значение для этого заголовка. | |
| http_agent string | По умолчанию: "ansible-httpget" | Идентификатор заголовка, обычно отображаемый в журнале веб-сервера. Это устанавливается как заголовок User-Agent в HTTP-запросе. |
| maximum_redirection integer | По умолчанию: 50 | Укажите, сколько раз модуль будет перенаправлять соединение на альтернативный URI, прежде чем соединение прервётся. Если установлено значение 0 или follow_redirects установлено в none, или safe при отсутствии GET или HEAD, это предотвращает все перенаправления. |
| proxy_password string | Пароль для proxy_username. | |
| proxy_url string | Явный прокси для использования в запросе. По умолчанию запрос будет использовать определённый в IE прокси, если только use_proxy не установлен в no. | |
| proxy_use_default_credential boolean |
| Использует учетные данные текущего пользователя при аутентификации на прокси-хосте, защищенном NTLM, Kerberos, или Negotiate аутентификацией.Прокси, использующие Basic аутентификацию, по-прежнему потребуют явных учетных данных через параметры proxy_username и proxy_password.Модуль получит доступ к учетным данным пользователя только при использовании become с паролем, соединении по SSH с паролем или соединении по WinRM с CredSSP или Kerberos with delegation.Если не используется become или другой метод аутентификации, перечисленные выше, доступных учетных данных по умолчанию не будет, и аутентификация прокси не произойдёт. |
| proxy_username string | Имя пользователя для аутентификации прокси. | |
| removes path | Имя файла; если оно не существует, этот шаг будет пропущен. | |
| return_content boolean |
| Возвращать ли тело ответа в виде ключа «content» в результатах словаря. Если указанный тип содержимого — «application/json», то JSON дополнительно загружается в ключ, называемый json в результатах словаря. |
| status_code list / elements=integer | По умолчанию: [200] | Действительный числовой код состояния HTTP, указывающий на успешность запроса. Также может быть запятой-разделенный список кодов состояния. |
| url string / required | Поддерживает URL FTP, HTTP или HTTPS в формате (ftp|http|https)://host.domain:port/path. | |
| url_method string | По умолчанию: "GET" | Метод HTTP запроса. псевдонимы: method |
| url_password string | Пароль для url_username. Псевдоним password устарел и будет удалён в следующей основной версии после 2022-07-01. псевдонимы: password | |
| url_timeout integer | По умолчанию: 30 | Устанавливает время ожидания запроса в секундах, после которого он будет прерван. Установите значение 0 для указания бесконечного таймаута.псевдонимы: timeout |
| url_username string | Имя пользователя для аутентификации. Псевдонимы user и username устарели и будут удалены в следующей основной версии после 2022-07-01. псевдонимы: user, username | |
| use_default_credential boolean |
| Использует учетные данные текущего пользователя при аутентификации на сервере, защищенном NTLM, Kerberos, или Negotiate аутентификацией.Серверы, использующие Basic аутентификацию, всё равно потребуют явных учетных данных через параметры url_username и url_password.Модуль получит доступ к учетным данным пользователя только при использовании become с паролем, соединении по SSH с паролем или соединении по WinRM с CredSSP или Kerberos with delegation.Если не используется become или другой метод аутентификации, перечисленные выше, доступных учетных данных по умолчанию не будет, и аутентификация не произойдёт. |
| use_proxy boolean |
| Если no, прокси, определённый в IE для текущего пользователя, не будет использоваться. |
| validate_certs boolean |
| Если no, сертификаты SSL не будут проверяться.Это следует использовать только на контролируемых сайтах с самозаверяемыми сертификатами. |
См. также
См. также
- ansible.builtin.uri
-
Официальная документация по модулю ansible.builtin.uri.
- ansible.windows.win_get_url
-
Официальная документация по модулю ansible.windows.win_get_url.
- community.windows.win_inet_proxy
-
Официальная документация по модулю community.windows.win_inet_proxy.
Примеры
- name: Perform a GET and Store Output
ansible.windows.win_uri:
url: http://example.com/endpoint
register: http_output
# Set a HOST header to hit an internal webserver:
- name: Hit a Specific Host on the Server
ansible.windows.win_uri:
url: http://example.com/
method: GET
headers:
host: www.somesite.com
- name: Perform a HEAD on an Endpoint
ansible.windows.win_uri:
url: http://www.example.com/
method: HEAD
- name: POST a Body to an Endpoint
ansible.windows.win_uri:
url: http://www.somesite.com/
method: POST
body: "{ 'some': 'json' }"
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| content строка | успех и return_content равно True | Необработанное содержимое HTTP ответа. Пример: {"foo": "bar"} |
| content_length целое число | успех | Размер ответа в байтах. Пример: 54447 |
| elapsed вещественное число | всегда | Количество секунд, затраченное на загрузку. Пример: 23.2 |
| json словарь | успех и Content-Type равен "application/json" или "application/javascript" и return_content равно True | Структура JSON, возвращенная в content как словарь. Пример: {'this-is-dependent': 'on the actual return content'} |
| status_code целое число | успех | Код состояния HTTP ответа. Пример: 200 |
| status_description строка | успех | Краткое описание состояния. Пример: OK |
| url строка | всегда | Целевой URL. Пример: https://www.ansible.com |
Авторы
- Corwin Brown (@blakfeld)
- Dag Wieers (@dagwieers)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/ansible/windows/win_uri_module.html