You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
wiki-decort-ansible/10.0.0/модуль-decort_security_grou...

13 KiB

Модуль decort_security_group

Обзор модуля

Модуль decort_security_group предназначен для выполнения следующих действий над группой безопасности:

Параметры модуля

Ниже приведен список параметров для модуля decort_security_group (за исключением общих параметров авторизации):

Параметр Тип Описание
account_id (int) Идентификатор аккаунта. Обязательный при создании.
Не поддерживается изменение для существующей группы безопасности.
description (str) Описание.
id (int) Идентификатор.
name (str) Название. Обязательный при создании.
rules (dict) Словарь, описывающий правила группы безопасности.
mode (str)
Значения:
delete
match
update
Default: update
Режим работы параметра.
delete - указанные управила отсутствуют.
match - существуют только указанные правила.
update - указанные правила существуют.
objects (list) Cписок словарей, описывающих целевые правила.
direction (str)
Значения:
INBOUND
OUTBOUND
Направление трафика. Обязательный параметр.
ethertype (str)
Значения:
IPV4
IPV6
Протокол, инкапсулированный в Ethernet-кадр.
Значение по умолчанию при создании правила: IPV4
id (int) Идентификатор правила.
port_range (dict) Диапазон портов TCP/UDP.
min (int) Нижняя граница диапазона.
max (int) Верхняя граница диапазона.
protocol (str)
Значения:
ICMP
TCP
UDP
Протокол, инкапсулированный в IP-пакет.
remote_ip_prefix (str) Подсеть, в которую должен входить IP-адрес удалённого хоста.
state (str)
Значения:
absent
present
Целевое состояние.
absent - безвозвратно удалён или не существует.
present - существует и не удалён.
Значение по умолчнию при создании: present

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

Модуль decort_security_group возвращает информацию о группе безопасности в виде словаря facts со следующими ключами:

Ключ Тип
данных
Описание
account_id int Идентификатор аккаунта.
created_by str Пользователь, создавший объект.
created_timestamp int Unix-время создания.
description str Описание.
id int Идентификатор.
name str Название.
rules list Список словарей, описывающих правила.
direction str Направление трафика.
ethertype str Протокол, инкапсулированный в Ethernet-кадр.
id int Идентификатор правила.
port_range dict Диапазон портов TCP/UDP.
min int Нижняя граница диапазона.
max int Верхняя граница диапазона.
protocol str | null Протокол, инкапсулированный в IP-пакет.
remote_ip_prefix str Подсеть, в которую должен входить IP-адрес удалённого хоста.
updated_by str Пользователь, обновивший объект.
updated_timestamp int Unix-время обновления.

Примеры использования

Получить информацию

- name: Example
  hosts: localhost
  tasks:
    - name: Get security group info
      decort_security_group:
        # Параметры для авторизации упущены
        id: "{{ security_group_id }}"

Создать

- name: Example
  hosts: localhost
  tasks:
    - name: Create security group
      decort_security_group:
        # Параметры для авторизации упущены
        account_id: "{{ account_id }}"
        name: "{{ security_group_name }}"
        state: present

С указанием описания

- name: Example
  hosts: localhost
  tasks:
    - name: Create security group with description
      decort_security_group:
        # Параметры для авторизации упущены
        account_id: "{{ account_id }}"
        name: "{{ security_group_name }}"
        description: "{{ description }}"
        state: present

Удалить

- name: Example
  hosts: localhost
  tasks:
    - name: Delete security group
      decort_security_group:
        # Параметры для авторизации упущены
        id: "{{ security_group_id }}"
        state: absent

Изменить

Название

- name: Example
  hosts: localhost
  tasks:
    - name: Change security group name
      decort_security_group:
        # Параметры для авторизации упущены
        id: "{{ security_group_id }}"
        name: "{{ new_security_group_name }}"

Описание

- name: Example
  hosts: localhost
  tasks:
    - name: Change security group description
      decort_security_group:
        # Параметры для авторизации упущены
        id: "{{ security_group_id }}"
        description: "{{ new_security_group_description }}"

Правила

Обновить

- name: Example
  hosts: localhost
  tasks:
    - name: Update security group rules
      decort_security_group:
        # Параметры для авторизации упущены
        id: "{{ security_group_id }}"
        rules:
          mode: update
          objects:
            - direction: "{{ rule1_direction }}"
              ethertype: "{{ rule1_ethertype }}"
              port_range:
                min: "{{ rule1_port_min }}"
                max: "{{ rule1_port_max }}"
              protocol: "{{ rule1_protocol }}"
              remote_ip_prefix: "{{ rule1_remote_ip_prefix }}"
            - direction: "{{ rule2_direction }}"
              ethertype: "{{ rule2_ethertype }}"
              port_range:
                min: "{{ rule2_port_min }}"
                max: "{{ rule2_port_max }}"
              protocol: "{{ rule2_protocol }}"
              remote_ip_prefix: "{{ rule2_remote_ip_prefix }}"

Удалить

- name: Example
  hosts: localhost
  tasks:
    - name: Delete security group rules
      decort_security_group:
        # Параметры для авторизации упущены
        id: "{{ security_group_id }}"
        rules:
          mode: delete
          objects:
            - id: "{{ rule_id }}"

Привести в соответствие

- name: Example
  hosts: localhost
  tasks:
    - name: Match security group rules
      decort_security_group:
        # Параметры для авторизации упущены
        id: "{{ security_group_id }}"
        mode: match
          objects:
            - id: "{{ rule1_id }}"
            - id: "{{ rule2_id }}"
            - direction: "{{ rule3_direction }}"
              ethertype: "{{ rule3_ethertype }}"
              port_range:
                min: "{{ rule3_port_min }}"
                max: "{{ rule3_port_max }}"
              protocol: "{{ rule3_protocol }}"
              remote_ip_prefix: "{{ rule3_remote_ip_prefix }}"