FWaaS v2 API reference

Add API references for Firewall as a Service v2.

Co-Authored-By: Yushiro FURUKAWA <y.furukawa_2@jp.fujitsu.com>

Change-Id: Icc6f8b5f04268a7efc3522b28f30df1283fcdfda
Partial-Implements: blueprint fwaas-api-2.0
This commit is contained in:
Margaret Frances 2016-10-28 07:56:23 +02:00 committed by Armando Migliaccio
parent 864b1c025e
commit 0841296497
25 changed files with 1646 additions and 33 deletions

View File

@ -0,0 +1,847 @@
.. -*- rst -*-
================================================================================
FWaaS v2.0 (CURRENT) (fwaas, firewall_groups, firewall_policies, firewall_rules)
================================================================================
Use the Firewall-as-a-Service (FWaaS) v2.0 extension to deploy
firewall groups to protect your networks.
The FWaaS extension enables you to:
- Apply firewall rules on traffic entering and leaving project
networks.
- Apply TCP, UDP, ICMP, or protocol-agnostic rules.
- Create and share firewall policies that hold an ordered collection
of firewall rules.
- Audit firewall rules and policies.
This extension introduces the following resources:
- ``firewall_group``. A logical firewall resource that a project can
create and manage. A firewall group can have a firewall policy for
ingress traffic and/or a firewall policy for egress traffic.
- ``firewall_policy``. An ordered collection of firewall rules. You
can share a firewall policy across projects. You can include a
firewall policy as part of an audit workflow so that an
authorized relevant entity can audit the firewall policy. This
entity can differ from the user who created, or the projects
that use, the firewall policy.
- ``firewall_rule``. A collection of attributes, such as source and
destination ports, source and destination IP addresses, protocol,
and IP version. These attributes define match criteria and an
action to take, such as allow, reject, or deny, on matched data
traffic.
List firewall groups
====================
.. rest_method:: GET /v2.0/fwaas/firewall_groups
Lists all firewall groups.
The list might be empty.
Use the ``fields`` query parameter to control which fields are
returned in the response body. Additionally, you can filter results
by using query string parameters. For information, see `Filtering
and Column Selection <https://wiki.openstack.org/wiki/Neutron/APIv2
-specification#Filtering_and_Column_Selection>`__.
Normal response codes: 200
Error response codes: 401, 403
Request
-------
.. rest_parameters:: parameters.yaml
- fields: fields
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- firewall_groups: firewall_groups_object
- admin_state_up: firewall_group_admin_state_up-body-required
- description: firewall_group_description-body-required
- egress_firewall_policy_id: egress_firewall_policy_id-body-required
- id: firewall_group_id-body-required
- ingress_firewall_policy_id: ingress_firewall_policy_id-body-required
- name: firewall_group_name-body-required
- ports: firewall_group_ports-body-required
- project_id: project_id-body-required
- public: firewall_group_shared-body-required
- status: firewall_group_status-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-groups-list-response.json
:language: javascript
Show firewall group details
===========================
.. rest_method:: GET /v2.0/fwaas/firewall_groups/{firewall_group_id}
Shows details for a firewall group.
If the user is not an administrative user and the firewall group
object does not belong to the project, this call returns the
``FirewallGroupNotFound (404)`` response code.
Normal response codes: 200
Error response codes: 401, 403, 404
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_group_id: firewall_group_id-path-required
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- firewall_group: firewall_group_object
- admin_state_up: firewall_group_admin_state_up-body-required
- description: firewall_group_description-body-required
- egress_firewall_policy_id: egress_firewall_policy_id-body-required
- id: firewall_group_id-body-required
- ingress_firewall_policy_id: ingress_firewall_policy_id-body-required
- name: firewall_group_name-body-required
- ports: firewall_group_ports-body-required
- project_id: project_id-body-required
- public: firewall_group_shared-body-required
- status: firewall_group_status-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-group-show-response.json
:language: javascript
Create firewall group
=====================
.. rest_method:: POST /v2.0/fwaas/firewall_groups
Creates a firewall group.
The firewall group may be associated with an ingress firewall policy
and/or an egress firewall policy.
If ``admin_state_up`` is ``false``, the firewall group will block all
traffic.
Normal response codes: 201
Error response codes: 400, 401
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_group: firewall_group_object
- admin_state_up: firewall_group_admin_state_up-body-optional
- description: firewall_group_description-body-optional
- egress_firewall_policy_id: egress_firewall_policy_id-body-optional
- ingress_firewall_policy_id: ingress_firewall_policy_id-body-optional
- name: firewall_group_name-body-optional
- ports: firewall_group_ports-body-optional
- project_id: project_id-body-optional
- public: firewall_group_shared-body-optional
- status: firewall_group_status-body-optional
- tenant_id: project_id-body-optional
Request Example
---------------
.. literalinclude:: samples/firewall-v2/firewall-group-create-request.json
:language: javascript
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- firewall_group: firewall_group_object
- admin_state_up: firewall_group_admin_state_up-body-required
- description: firewall_group_description-body-required
- egress_firewall_policy_id: egress_firewall_policy_id-body-required
- id: firewall_group_id-body-required
- ingress_firewall_policy_id: ingress_firewall_policy_id-body-required
- name: firewall_group_name-body-required
- ports: firewall_group_ports-body-required
- project_id: project_id-body-required
- public: firewall_group_shared-body-required
- status: firewall_group_status-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-group-create-response.json
:language: javascript
Update firewall group
=====================
.. rest_method:: PUT /v2.0/fwaas/firewall_groups/{firewall_group_id}
Updates a firewall group.
The firewall group cannot be updated if its status is a PENDING_* status.
Normal response codes: 200
Error response codes: 400, 401, 404
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_group_id: firewall_group_id-path-required
- firewall_group: firewall_group_object
- admin_state_up: firewall_group_admin_state_up-body-optional
- description: firewall_group_description-body-optional
- egress_firewall_policy_id: egress_firewall_policy_id-body-optional
- ingress_firewall_policy_id: ingress_firewall_policy_id-body-optional
- name: firewall_group_name-body-optional
- ports: firewall_group_ports-body-optional
- status: firewall_group_status-body-optional
Request Example
---------------
.. literalinclude:: samples/firewall-v2/firewall-group-update-request.json
:language: javascript
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- firewall_group: firewall_group_object
- admin_state_up: firewall_group_admin_state_up-body-required
- description: firewall_group_description-body-required
- egress_firewall_policy_id: egress_firewall_policy_id-body-required
- id: firewall_group_id-body-required
- ingress_firewall_policy_id: ingress_firewall_policy_id-body-required
- name: firewall_group_name-body-required
- ports: firewall_group_ports-body-required
- project_id: project_id-body-required
- public: firewall_group_shared-body-required
- status: firewall_group_status-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-group-update-response.json
:language: javascript
Delete firewall group
=====================
.. rest_method:: DELETE /v2.0/fwaas/firewall_groups/{firewall_group_id}
Deletes a firewall group.
Normal response codes: 204
Error response codes: 401, 404, 409
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_group_id: firewall_group_id-path-required
Response
--------
There is no body content for the response of a successful DELETE request.
List firewall policies
======================
.. rest_method:: GET /v2.0/fwaas/firewall_policies
Lists all firewall policies.
The list might be empty.
Use the ``fields`` query parameter to control which fields are
returned in the response body. Additionally, you can filter results
by using query string parameters. For information, see `Filtering
and Column Selection <https://wiki.openstack.org/wiki/Neutron/APIv2
-specification#Filtering_and_Column_Selection>`__.
Normal response codes: 200
Error response codes: 401, 403
Request
-------
.. rest_parameters:: parameters.yaml
- fields: fields
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- firewall_policies: firewall_policies_object
- audited: firewall_policy_audited-body-required
- description: firewall_policy_description-body-required
- id: firewall_policy_id-body-required
- firewall_rules: firewall_rules-body-required
- name: firewall_policy_name-body-required
- project_id: project_id-body-required
- public: firewall_policy_shared-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-policies-list-response.json
:language: javascript
Show firewall policy details
============================
.. rest_method:: GET /v2.0/fwaas/firewall_policies/{firewall_policy_id}
Shows details of a firewall policy.
Normal response codes: 200
Error response codes: 401, 403, 404
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_policy_id: firewall_policy_id-path-required
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- audited: firewall_policy_audited-body-required
- description: firewall_policy_description-body-required
- firewall_rules: firewall_rules-body-required
- id: firewall_policy_id-body-required
- name: firewall_policy_name-body-required
- project_id: project_id-body-required
- public: firewall_policy_shared-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-policy-show-response.json
:language: javascript
Create firewall policy
======================
.. rest_method:: POST /v2.0/fwaas/firewall_policies
Creates a firewall policy.
Normal response codes: 201
Error response codes: 400, 401
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_policy: firewall_policy_object
- audited: firewall_policy_audited-body-optional
- description: firewall_policy_description-body-optional
- firewall_rules: firewall_rules-body-optional
- name: firewall_policy_name-body-optional
- project_id: project_id-body-optional
- public: firewall_policy_shared-body-optional
- tenant_id: project_id-body-optional
Request Example
---------------
.. literalinclude:: samples/firewall-v2/firewall-policy-create-request.json
:language: javascript
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- firewall_policy: firewall_policy_object
- audited: firewall_policy_audited-body-required
- description: firewall_policy_description-body-required
- firewall_rules: firewall_rules-body-required
- id: firewall_policy_id-body-required
- name: firewall_policy_name-body-required
- project_id: project_id-body-required
- public: firewall_policy_shared-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-policy-create-response.json
:language: javascript
Update firewall policy
======================
.. rest_method:: PUT /v2.0/fwaas/firewall_policies/{firewall_policy_id}
Updates a firewall policy.
Normal response codes: 200
Error response codes: 400, 401, 404
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_policy_id: firewall_policy_id-path-required
- firewall_policy: firewall_policy_object
- audited: firewall_policy_audited-body-optional
- description: firewall_policy_description-body-optional
- firewall_rules: firewall_rules-body-optional
- name: firewall_policy_name-body-optional
- project_id: project_id-body-optional
- public: firewall_policy_shared-body-optional
- tenant_id: project_id-body-optional
Request Example
---------------
.. literalinclude:: samples/firewall-v2/firewall-policy-update-request.json
:language: javascript
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- firewall_policy: firewall_policy_object
- audited: firewall_policy_audited-body-required
- description: firewall_policy_description-body-required
- firewall_rules: firewall_rules-body-required
- id: firewall_policy_id-body-required
- name: firewall_policy_name-body-required
- public: firewall_policy_shared-body-required
- project_id: project_id-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-policy-update-response.json
:language: javascript
Delete firewall policy
======================
.. rest_method:: DELETE /v2.0/fwaas/firewall_policies/{firewall_policy_id}
Deletes a firewall policy.
Normal response codes: 204
Error response codes: 401, 404, 409
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_policy_id: firewall_policy_id-path-required
Response
--------
There is no body content for the response of a successful DELETE request.
List firewall rules
===================
.. rest_method:: GET /v2.0/fwaas/firewall_rules
Lists all firewall rules.
The list might be empty.
Use the ``fields`` query parameter to control which fields are
returned in the response body. Additionally, you can filter results
by using query string parameters. For information, see `Filtering
and Column Selection <https://wiki.openstack.org/wiki/Neutron/APIv2
-specification#Filtering_and_Column_Selection>`__.
Normal response codes: 200
Error response codes: 401, 403
Request
-------
.. rest_parameters:: parameters.yaml
- fields: fields
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- firewall_rules: firewall_rules_object
- action: firewall_rule_action-body-required
- description: firewall_rule_description-body-required
- destination_ip_address: firewall_rule_destination_ip_address-body-required
- destination_port: firewall_rule_destination_port-body-required
- enabled: firewall_rule_enabled-body-required
- firewall_policy_id: firewall_policy_id-body-required
- id: firewall_rule_id-body-required
- ip_version: firewall_rule_ip_version-body-required
- name: firewall_rule_name-body-required
- project_id: project_id-body-required
- protocol: firewall_rule_protocol-body-required
- public: firewall_rule_shared-body-required
- source_ip_address: firewall_rule_source_ip_address-body-required
- source_port: firewall_rule_source_port-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-rules-list-response.json
:language: javascript
Show firewall rule details
==========================
.. rest_method:: GET /v2.0/fwaas/firewall_rules/{firewall_rule_id}
Shows details for a firewall rule.
If the user is not an administrative user and the firewall rule
object does not belong to the project, this call returns the
``Forbidden (403)`` response code.
Normal response codes: 200
Error response codes: 401, 403, 404
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_rule_id: firewall_rule_id-path-required
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- firewall_rule: firewall_rule_object
- action: firewall_rule_action-body-required
- description: firewall_rule_description-body-required
- destination_ip_address: firewall_rule_destination_ip_address-body-required
- destination_port: firewall_rule_destination_port-body-required
- enabled: firewall_rule_enabled-body-required
- firewall_policy_id: firewall_policy_id-body-required
- id: firewall_rule_id-body-required
- ip_version: firewall_rule_ip_version-body-required
- name: firewall_rule_name-body-required
- project_id: project_id-body-required
- protocol: firewall_rule_protocol-body-required
- public: firewall_rule_shared-body-required
- source_ip_address: firewall_rule_source_ip_address-body-required
- source_port: firewall_rule_source_port-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-rule-show-response.json
:language: javascript
Create firewall rule
====================
.. rest_method:: POST /v2.0/fwaas/firewall_rules
Creates a firewall rule.
Normal response codes: 201
Error response codes: 400, 401
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_rule: firewall_rule_object
- action: firewall_rule_action-body-optional
- description: firewall_rule_description-body-optional
- destination_ip_address: firewall_rule_destination_ip_address-body-optional
- destination_port: firewall_rule_destination_port-body-optional
- enabled: firewall_rule_enabled-body-optional
- ip_version: firewall_rule_ip_version-body-optional
- name: firewall_rule_name-body-optional
- project_id: project_id-body-optional
- protocol: firewall_rule_protocol-body-optional
- public: firewall_rule_shared-body-optional
- source_ip_address: firewall_rule_source_ip_address-body-optional
- source_port: firewall_rule_source_port-body-optional
- tenant_id: project_id-body-optional
Request Example
---------------
.. literalinclude:: samples/firewall-v2/firewall-rule-create-request.json
:language: javascript
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- firewall_rule: firewall_rule_object
- action: firewall_rule_action-body-required
- description: firewall_rule_description-body-required
- destination_ip_address: firewall_rule_destination_ip_address-body-required
- destination_port: firewall_rule_destination_port-body-required
- enabled: firewall_rule_enabled-body-required
- firewall_policy_id: firewall_policy_id-body-required
- id: firewall_rule_id-body-required
- ip_version: firewall_rule_ip_version-body-required
- name: firewall_rule_name-body-required
- project_id: project_id-body-required
- protocol: firewall_rule_protocol-body-required
- public: firewall_rule_shared-body-required
- source_ip_address: firewall_rule_source_ip_address-body-required
- source_port: firewall_rule_source_port-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-rule-create-response.json
:language: javascript
Update firewall rule
====================
.. rest_method:: PUT /v2.0/fwaas/firewall_rules/{firewall_rule_id}
Updates a firewall rule.
Normal response codes: 200
Error response codes: 400, 401, 404
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_rule_id: firewall_rule_id-path-required
- firewall_rule: firewall_rule_object
- action: firewall_rule_action-body-optional
- description: firewall_rule_description-body-optional
- destination_ip_address: firewall_rule_destination_ip_address-body-optional
- destination_port: firewall_rule_destination_port-body-optional
- enabled: firewall_rule_enabled-body-optional
- firewall_policy_id: firewall_policy_id-body-required
- ip_version: firewall_rule_ip_version-body-optional
- name: firewall_rule_name-body-optional
- project_id: project_id-body-optional
- protocol: firewall_rule_protocol-body-optional
- public: firewall_rule_shared-body-optional
- source_ip_address: firewall_rule_source_ip_address-body-optional
- source_port: firewall_rule_source_port-body-optional
- tenant_id: project_id-body-optional
Request Example
---------------
.. literalinclude:: samples/firewall-v2/firewall-rule-update-request.json
:language: javascript
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- firewall_rule: firewall_rule_object
- action: firewall_rule_action-body-required
- description: firewall_rule_description-body-required
- destination_ip_address: firewall_rule_destination_ip_address-body-required
- destination_port: firewall_rule_destination_port-body-required
- enabled: firewall_rule_enabled-body-required
- firewall_policy_id: firewall_policy_id-body-required
- id: firewall_rule_id-body-required
- ip_version: firewall_rule_ip_version-body-required
- name: firewall_rule_name-body-required
- project_id: project_id-body-required
- protocol: firewall_rule_protocol-body-required
- public: firewall_rule_shared-body-required
- source_ip_address: firewall_rule_source_ip_address-body-required
- source_port: firewall_rule_source_port-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-rule-update-response.json
:language: javascript
Delete firewall rule
====================
.. rest_method:: DELETE /v2.0/fwaas/firewall_rules/{firewall_rule_id}
Deletes a firewall rule.
samples/firewall-v2/firewall-policy-create-response.json
Normal response codes: 204
Error response codes: 401, 404, 409
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_rule_id: firewall_rule_id-path-required
Insert rule into a firewall policy
==================================
.. rest_method:: PUT /v2.0/fwaas/firewall_policies/{firewall_policy_id}/insert_rule
Insert firewall rule into a policy.
A firewall_rule_id is inserted relative to the position of the
firewall_rule_id set in ``insert_before`` or ``insert_after``. If
``insert_before`` is set, ``insert_after`` is ignored. If both
``insert_before`` and ``insert_after`` are not set, the new
firewall_rule_id is inserted as the first rule of the policy.
Normal response codes: 200
Error response codes: 400, 401, 404, 409
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_policy_id: firewall_policy_id-path-required
- firewall_rule_id: firewall_rule_id-body-required
- insert_after: firewall_rule_insert_after-body-required
- insert_before: firewall_rule_insert_before-body-required
Request Example
---------------
.. literalinclude:: samples/firewall-v2/firewall-policy-insert-rule-request.json
:language: javascript
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- audited: firewall_policy_audited-body-required
- description: firewall_policy_description-body-required
- firewall_rules: firewall_rules-body-required
- id: firewall_policy_id-body-required
- name: firewall_policy_name-body-required
- project_id: project_id-body-required
- public: firewall_policy_shared-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-policy-insert-rule-response.json
:language: javascript
Remove rule from firewall policy
================================
.. rest_method:: PUT /v2.0/fwaas/firewall_policies/{firewall_policy_id}/remove_rule
Remove firewall rule from a policy.
Normal response codes: 200
Error response codes: 400, 401, 404
Request
-------
.. rest_parameters:: parameters.yaml
- firewall_policy_id: firewall_policy_id-path-required
- firewall_rule_id: firewall_rule_id-body-required
Request Example
---------------
.. literalinclude:: samples/firewall-v2/firewall-policy-remove-rule-request.json
:language: javascript
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- audited: firewall_policy_audited-body-required
- description: firewall_policy_description-body-required
- firewall_rules: firewall_rules-body-required
- id: firewall_policy_id-body-required
- name: firewall_policy_name-body-required
- project_id: project_id-body-required
- public: firewall_policy_shared-body-required
- tenant_id: project_id-body-required
Response Example
----------------
.. literalinclude:: samples/firewall-v2/firewall-policy-remove-rule-response.json
:language: javascript

View File

@ -36,6 +36,7 @@ Layer 3 Networking
Security
########
.. include:: fwaas.inc
.. include:: fwaas-v2.inc
.. include:: security-group-rules.inc
.. include:: security-groups.inc
.. include:: vpnaas.inc

View File

@ -19,6 +19,12 @@ extensions-alias-path:
in: path
required: true
type: string
firewall_group_id-path-required:
description: |
The ID of the firewall group.
in: path
required: true
type: string
firewall_id:
description: |
The ID of the firewall.
@ -31,12 +37,24 @@ firewall_policy_id-path:
in: path
required: true
type: string
firewall_policy_id-path-required:
description: |
The ID of the firewall policy.
in: path
required: true
type: string
firewall_rule_id:
description: |
The ID for the firewall rule.
in: path
required: true
type: string
firewall_rule_id-path-required:
description: |
The ID for the firewall rule.
in: path
required: true
type: string
flavor_id:
description: |
The UUID of the flavor.
@ -830,19 +848,19 @@ delay_2:
type: integer
description:
description: |
The human-readable description for the resource.
A human-readable description for the resource.
in: body
required: true
type: string
description-request:
description: |
The human-readable description for the resource.
A human-readable description for the resource.
in: body
required: false
type: string
description_1:
description: |
Human readable description for the firewall rule.
A human-readable description for the firewall rule.
The maximum length is 1024 characters. No default.
in: body
required: false
@ -855,7 +873,7 @@ description_10:
type: string
description_11:
description: |
Human-readable description for the pool.
A human-readable description for the pool.
in: body
required: false
type: string
@ -867,33 +885,33 @@ description_12:
type: string
description_13:
description: |
Human-readable description for the service
A human-readable description for the service
profile.
in: body
required: false
type: string
description_14:
description: |
Human-readable description for the VIP.
A human-readable description for the VIP.
in: body
required: false
type: string
description_15:
description: |
Human-readable description for the VPN endpoint
A human-readable description for the VPN endpoint
group.
in: body
required: false
type: string
description_16:
description: |
Human-readable description for the VPN service.
A human-readable description for the VPN service.
in: body
required: false
type: string
description_17:
description: |
The human-readable description for the firewall
A human-readable description for the firewall
policy.
in: body
required: true
@ -906,39 +924,39 @@ description_18:
type: string
description_19:
description: |
Human readable description for the firewall rule.
A human-readable description for the firewall rule.
in: body
required: true
type: string
description_2:
description: |
Human-readable description for the firewall
A human-readable description for the firewall
service.
in: body
required: false
type: string
description_20:
description: |
The human-readable description for the firewall
A human-readable description for the firewall
service.
in: body
required: true
type: string
description_21:
description: |
Human-readable description for the flavor.
A human-readable description for the flavor.
in: body
required: true
type: string
description_22:
description: |
Human-readable description for the IKE policy.
A human-readable description for the IKE policy.
in: body
required: true
type: string
description_23:
description: |
Human-readable description for the IPSec
A human-readable description for the IPSec
connection.
in: body
required: true
@ -981,33 +999,33 @@ description_29:
type: string
description_3:
description: |
Human-readable description for the flavor.
A human-readable description for the flavor.
in: body
required: false
type: string
description_30:
description: |
Human-readable description for the service
A human-readable description for the service
profile.
in: body
required: true
type: string
description_31:
description: |
Human-readable description for the VIP.
A human-readable description for the VIP.
in: body
required: true
type: string
description_32:
description: |
Human-readable description for the VPN endpoint
A human-readable description for the VPN endpoint
group.
in: body
required: true
type: string
description_33:
description: |
Human-readable description for the VPN service.
A human-readable description for the VPN service.
in: body
required: true
type: string
@ -1025,19 +1043,19 @@ description_35:
type: string
description_4:
description: |
Human-readable description for the IKE policy.
A human-readable description for the IKE policy.
in: body
required: false
type: string
description_5:
description: |
Human-readable description for the IPSec policy.
A human-readable description for the IPSec policy.
in: body
required: true
type: string
description_6:
description: |
Human-readable description for the IPSec
A human-readable description for the IPSec
connection.
in: body
required: false
@ -1217,6 +1235,18 @@ dscp_marking_rules:
in: body
required: true
type: array
egress_firewall_policy_id-body-optional:
description: |
The ID of the egress firewall policy for the firewall group.
in: body
required: false
type: string
egress_firewall_policy_id-body-required:
description: |
The ID of the egress firewall policy for the firewall group.
in: body
required: true
type: string
enabled:
description: |
Set to ``false`` to disable this rule in the
@ -1226,6 +1256,13 @@ enabled:
in: body
required: false
type: boolean
enabled-body-required:
description: |
Indicates whether this resource is enabled or
disabled.
in: body
required: true
type: boolean
enabled-response:
description: |
Set to ``false`` to disable this rule in the
@ -1457,6 +1494,118 @@ firewall-status:
in: body
required: true
type: string
firewall_audited-body-required:
description: |
Each time that the firewall policy or its
associated rules are changed, the API sets this attribute to
``false``. To audit the policy, explicitly set this attribute to
``true``.
in: body
required: true
type: boolean
firewall_group_admin_state_up-body-optional:
description: |
The administrative state of the firewall group, which
is up (``true``) or down (``false``). Default is ``true``.
in: body
required: false
type: boolean
firewall_group_admin_state_up-body-required:
description: |
The administrative state of the firewall group, which
is up (``true``) or down (``false``). Default is ``true``.
in: body
required: true
type: boolean
firewall_group_description-body-optional:
description: |
A human-readable description of the firewall group.
in: body
required: false
type: object
firewall_group_description-body-required:
description: |
A human-readable description of the firewall group.
in: body
required: true
type: object
firewall_group_id-body-required:
description: |
The ID of the firewall group.
in: body
required: true
type: string
firewall_group_list-body-required:
description: |
A list of the IDs of firewall groups associated with
the firewall policy.
in: body
required: true
type: array
firewall_group_name-body-optional:
description: |
A human-readable name for the firewall group.
in: body
required: false
type: string
firewall_group_name-body-required:
description: |
A human-readable name for the firewall group.
in: body
required: true
type: string
firewall_group_object:
description: |
A ``firewall_group`` object.
in: body
required: true
type: object
firewall_group_ports-body-optional:
description: |
A list of the IDs of the ports associated with the firewall group.
in: body
required: false
type: array
firewall_group_ports-body-required:
description: |
A list of the IDs of the ports associated with the firewall group.
in: body
required: true
type: array
firewall_group_shared-body-optional:
description: |
Indicates whether this firewall group is shared across all projects.
in: body
required: false
type: boolean
firewall_group_shared-body-required:
description: |
Indicates whether this firewall group is shared across all projects.
in: body
required: true
type: boolean
firewall_group_status-body-optional:
description: |
The status of the firewall group. Valid values are ``ACTIVE``,
``INACTIVE``, ``ERROR``, ``PENDING_UPDATE``, or
``PENDING_DELETE``.
in: body
required: false
type: string
firewall_group_status-body-required:
description: |
The status of the firewall group. Valid values are ``ACTIVE``,
``INACTIVE``, ``ERROR``, ``PENDING_UPDATE``, or
``PENDING_DELETE``.
in: body
required: true
type: string
firewall_groups_object:
description: |
A list of ``firewall_group`` objects.
in: body
required: true
type: array
firewall_id-body:
description: |
The ID of the firewall.
@ -1465,7 +1614,7 @@ firewall_id-body:
type: string
firewall_list:
description: |
A list of the IDs for firewall associated with
A list of the IDs of firewalls associated with
the firewall policy.
in: body
required: true
@ -1476,12 +1625,46 @@ firewall_policies:
in: body
required: true
type: array
firewall_policies_object:
description: |
A list of ``firewall_policy`` objects.
in: body
required: true
type: array
firewall_policy:
description: |
A ``firewall_policy`` object.
in: body
required: true
type: object
firewall_policy_audited-body-optional:
description: |
Each time that the firewall policy or its associated rules are
changed, the API sets this attribute to ``false``. To audit the
policy, explicitly set this attribute to ``true``.
in: body
required: false
type: boolean
firewall_policy_audited-body-required:
description: |
Each time that the firewall policy or its associated rules are
changed, the API sets this attribute to ``false``. To audit the
policy, explicitly set this attribute to ``true``.
in: body
required: true
type: boolean
firewall_policy_description-body-optional:
description: |
A human-readable name of the firewall policy.
in: body
required: false
type: string
firewall_policy_description-body-required:
description: |
A human-readable name of the firewall policy.
in: body
required: true
type: string
firewall_policy_id:
description: |
Read-only attribute that the API populates with
@ -1500,6 +1683,12 @@ firewall_policy_id-body:
in: body
required: true
type: string
firewall_policy_id-body-required:
description: |
The ID of the firewall policy.
in: body
required: true
type: string
firewall_policy_id_3:
description: |
The ID of the policy that is associated with
@ -1507,18 +1696,276 @@ firewall_policy_id_3:
in: body
required: false
type: string
firewall_policy_id_description-body-optional:
description: |
A human-readable description of the firewall policy.
in: body
required: false
type: string
firewall_policy_id_description-body-required:
description: |
A human-readable description of the firewall policy.
in: body
required: true
type: string
firewall_policy_name-body-optional:
description: |
A human-readable name of the firewall policy.
in: body
required: false
type: string
firewall_policy_name-body-required:
description: |
A human-readable name of the firewall policy.
in: body
required: true
type: string
firewall_policy_object:
description: |
A ``firewall_policy`` object.
in: body
required: true
type: object
firewall_policy_shared-body-optional:
description: |
Set to ``true`` to make this firewall policy
visible to other projects. Default is ``false``.
in: body
required: false
type: boolean
firewall_policy_shared-body-required:
description: |
Set to ``true`` to make this firewall policy
visible to other projects. Default is ``false``.
in: body
required: true
type: boolean
firewall_rule:
description: |
A ``firewall_rule`` object.
in: body
required: true
type: object
firewall_rule_action-body-optional:
description: |
The action that the API performs on traffic that
matches the firewall rule. Valid values are ``allow`` or ``deny``.
Default is ``deny``.
in: body
required: false
type: string
firewall_rule_action-body-required:
description: |
The action that the API performs on traffic that
matches the firewall rule. Valid values are ``allow`` or ``deny``.
Default is ``deny``.
in: body
required: true
type: string
firewall_rule_description-body-optional:
description: |
A human-readable description of the firewall rule.
in: body
required: false
type: string
firewall_rule_description-body-required:
description: |
A human-readable description of the firewall rule.
in: body
required: true
type: string
firewall_rule_destination_ip_address-body-optional:
description: |
The destination IPv4 or IPv6 address or CIDR for the firewall rule. No
default.
in: body
required: false
type: string
firewall_rule_destination_ip_address-body-required:
description: |
The destination IPv4 or IPv6 address or CIDR for the firewall rule. No
default.
in: body
required: true
type: string
firewall_rule_destination_port-body-optional:
description: |
The destination port or port range for the firewall rule. A valid
value is a port number, as an integer, or a port range, in the
format of a ``:`` separated range. For a port range, include both
ends of the range. For example, ``80:90``.
in: body
required: false
type: string
firewall_rule_destination_port-body-required:
description: |
The destination port or port range for the firewall rule. A valid
value is a port number, as an integer, or a port range, in the
format of a ``:`` separated range. For a port range, include both
ends of the range. For example, ``80:90``.
in: body
required: true
type: string
firewall_rule_enabled-body-optional:
description: |
Set to ``false`` to disable this rule in the firewall policy.
Facilitates selectively turning off rules without having to
disassociate the rule from the firewall policy. Valid values are
``true`` or ``false``. Default is ``true``.
in: body
required: false
type: boolean
firewall_rule_enabled-body-required:
description: |
Set to ``false`` to disable this rule in the firewall policy.
Facilitates selectively turning off rules without having to
disassociate the rule from the firewall policy. Valid values are
``true`` or ``false``. Default is ``true``.
in: body
required: true
type: boolean
firewall_rule_id-body:
description: |
The ID of the firewall rule.
in: body
required: true
type: string
firewall_rule_id-body-required:
description: |
The ID of the firewall rule.
in: body
required: true
type: string
firewall_rule_insert_after-body-required:
description: |
The ID of the firewall_rule to insert the new rule after. The new
rule will be inserted immediately after the specified firewall_rule.
If both ``before`` and ``after`` values are supplied, the ``after`` value
will be ignored. To insert a rule into a policy with no rules yet,
the both the ``before`` and the ``after`` values must be "".
in: body
required: true
type: string
firewall_rule_insert_before-body-required:
description: |
The ID of the firewall_rule to insert the new rule before. The new
rule will be inserted immediately before the specified firewall_rule.
If both ``before`` and ``after`` values are supplied, the ``after`` value
will be ignored. To insert a rule into a policy with no rules yet,
the both the ``before`` and the ``after`` values must be "".
in: body
required: true
type: string
firewall_rule_ip_version-body-optional:
description: |
The IP protocol version for the firewall rule. Valid values are
``4`` or ``6``. Default is ``4``.
in: body
required: false
type: integer
firewall_rule_ip_version-body-required:
description: |
The IP protocol version for the firewall rule. Valid values
are ``4`` or ``6``. Default is ``4``.
in: body
required: true
type: integer
firewall_rule_name-body-optional:
description: |
A human-readable name of the firewall rule.
in: body
required: false
type: string
firewall_rule_name-body-required:
description: |
A human-readable name of the firewall rule.
in: body
required: true
type: string
firewall_rule_object:
description: |
A ``firewall_rule`` object.
in: body
required: true
type: object
firewall_rule_position-body-optional:
description: |
Read-only attribute that the API assigns to this
rule when it associates it with a firewall policy. This value
indicates the position of this rule in that firewall policy. This
position number starts at 1. If the firewall rule is not
associated with any policy, the position is ``null``.
in: body
required: false
type: integer
firewall_rule_position-body-required:
description: |
Read-only attribute that the API assigns to this
rule when it associates it with a firewall policy. This value
indicates the position of this rule in that firewall policy. This
position number starts at 1. If the firewall rule is not
associated with any policy, the position is ``null``.
in: body
required: true
type: integer
firewall_rule_protocol-body-optional:
description: |
The IP protocol for the firewall rule. Possible values are ``icmp``, ``tcp``,
``udp``, or ``null``.
in: body
required: false
type: string
firewall_rule_protocol-body-required:
description: |
The IP protocol for the firewall rule. Possible values are ``icmp``, ``tcp``,
``udp``, or ``null``.
in: body
required: true
type: string
firewall_rule_shared-body-optional:
description: |
Indicates whether this firewall rule is shared across all projects.
in: body
required: false
type: boolean
firewall_rule_shared-body-required:
description: |
Indicates whether this firewall rule is shared across all projects.
in: body
required: true
type: boolean
firewall_rule_source_ip_address-body-optional:
description: |
The source IPv4 or IPv6 address or CIDR for the firewall rule. No
default.
in: body
required: false
type: string
firewall_rule_source_ip_address-body-required:
description: |
The source IPv4 or IPv6 address or CIDR for the firewall rule. No
default.
in: body
required: true
type: string
firewall_rule_source_port-body-optional:
description: |
The source port or port range for the firewall rule. A valid
value is a port number, as an integer, or a port range, in the
format of a ``:`` separated range. For a port range, include both
ends of the range. For example, ``80:90``.
in: body
required: false
type: string
firewall_rule_source_port-body-required:
description: |
The source port or port range for the firewall rule. A valid
value is a port number, as an integer, or a port range, in the
format of a ``:`` separated range. For a port range, include both
ends of the range. For example, ``80:90``.
in: body
required: true
type: string
firewall_rules:
description: |
A list of the IDs for firewall rule associated
@ -1526,6 +1973,20 @@ firewall_rules:
in: body
required: true
type: array
firewall_rules-body-optional:
description: |
A list of the IDs of the firewall rules associated
with the firewall policy.
in: body
required: false
type: array
firewall_rules-body-required:
description: |
A list of the IDs of the firewall rules associated
with the firewall policy.
in: body
required: true
type: array
firewall_rules_id:
description: |
A list of rules to associate with the firewall
@ -1533,6 +1994,12 @@ firewall_rules_id:
in: body
required: false
type: array
firewall_rules_object:
description: |
A list of ``firewall_rule`` objects.
in: body
required: true
type: object
firewalls:
description: |
A list of ``firewall_rule`` objects.
@ -2001,6 +2468,18 @@ ikepolicy_id:
in: body
required: true
type: string
ingress_firewall_policy_id-body-optional:
description: |
The ID of the ingress firewall policy for the firewall group.
in: body
required: false
type: string
ingress_firewall_policy_id-body-required:
description: |
The ID of the ingress firewall policy for the firewall group.
in: body
required: true
type: string
initiator:
description: |
Indicates whether this VPN can only respond to
@ -2594,7 +3073,7 @@ name_20:
type: string
name_21:
description: |
Human readable name for the firewall rule.
A human-readable name for the firewall rule.
in: body
required: true
type: string
@ -2730,7 +3209,7 @@ name_4:
type: string
name_40:
description: |
Human readable name for the firewall rule.
A human-readable name for the firewall rule.
Maximum length is 255 characters. Does not have to be unique. No
default.
in: body
@ -2738,14 +3217,14 @@ name_40:
type: string
name_41:
description: |
Human-readable name for the flavor. Can be "" and
A human-readable name for the flavor. Can be "" and
non-unique.
in: body
required: false
type: string
name_42:
description: |
The human-readable name for the firewall service.
A human-readable name for the firewall service.
Does not have to be unique.
in: body
required: false
@ -2759,7 +3238,7 @@ name_43:
type: string
name_5:
description: |
Human-readable name for the IPSec policy. Does
A human-readable name for the IPSec policy. Does
not have to be unique.
in: body
required: true
@ -3204,6 +3683,18 @@ project_id:
in: body
required: true
type: string
project_id-body-optional:
description: |
The ID of the project.
in: body
required: false
type: string
project_id-body-required:
description: |
The ID of the project.
in: body
required: true
type: string
project_id-request:
description: |
The ID of the project that owns the resource.
@ -4464,7 +4955,7 @@ tenant_id:
description: |
The ID of the project that owns the resource.
in: body
required: true
required: false
type: string
tenant_id-request:
description: |
@ -4561,9 +5052,7 @@ tenant_id_19:
type: string
tenant_id_2:
description: |
The UUID of the tenant who owns the network. Only
administrative users can specify a tenant UUID other than their
own.
The ID of the project that owns the resource.
in: body
required: true
type: string

View File

@ -0,0 +1,7 @@
{
"firewall_group": {
"admin_state_up": false,
"egress_firewall_policy_id": "14c9d3c1-b472-44f9-8226-30dc4ffd454c"
"ingress_firewall_policy_id": "c69933c1-b472-44f9-8226-30dc4ffd454c"
}
}

View File

@ -0,0 +1,17 @@
{
"firewall_group": {
"admin_state_up": true,
"description": "",
"egress_firewall_policy_id": "1244ed87-b472-44f9-8226-30dc4ffd454c",
"ingress_firewall_policy_id": "c69933c1-b472-44f9-8226-30dc4ffd454c",
"id": "3b0ef8f4-82c7-44d4-a4fb-6177f9a21977",
"name": "",
"ports": [
"650bfd2f-7766-4a0d-839f-218f33e16998"
],
"project_id": "45977fa2dbd7482098dd68d0d8970117",
"public": true,
"status": "PENDING_CREATE",
"tenant_id": "45977fa2dbd7482098dd68d0d8970117"
}
}

View File

@ -0,0 +1,14 @@
{
"firewall_group": {
"admin_state_up": true,
"description": "",
"egress_firewall_policy_id": null,
"id": "07411bda-0147-418b-af05-c8665630d937",
"ingress_firewall_policy_id": null,
"name": "",
"project_id": "96108b04417b416e9b9bc788c11c42c9",
"public": false,
"status": "INACTIVE",
"tenant_id": "96108b04417b416e9b9bc788c11c42c9"
}
}

View File

@ -0,0 +1,5 @@
{
"firewall_group": {
"admin_state_up": "false"
}
}

View File

@ -0,0 +1,16 @@
{
"firewall_group": {
"admin_state_up": false,
"description": "",
"egress_firewall_policy_id": "c69933c1-b472-44f9-8226-30dc4ffd454c",
"ingress_firewall_policy_id": "c69933c1-b472-44f9-8226-30dc4ffd454c",
"id": "3b0ef8f4-82c7-44d4-a4fb-6177f9a21977",
"name": "",
"ports": [
"650bfd2f-7766-4a0d-839f-218f33e16998"
],
"project_id": "45977fa2dbd7482098dd68d0d8970117",
"status": "PENDING_UPDATE",
"tenant_id": "45977fa2dbd7482098dd68d0d8970117"
}
}

View File

@ -0,0 +1,18 @@
{
"firewall_groups": [
{
"admin_state_up": true,
"description": "",
"egress_firewall_policy_id": "c69933c1-b472-44f9-8226-30dc4ffd454c",
"id": "3b0ef8f4-82c7-44d4-a4fb-6177f9a21977",
"ingress_firewall_policy_id": "c69933c1-b472-44f9-8226-30dc4ffd454c",
"name": "",
"ports": [
"650bfd2f-7766-4a0d-839f-218f33e16998"
],
"project_id": "45977fa2dbd7482098dd68d0d8970117",
"status": "ACTIVE",
"tenant_id": "45977fa2dbd7482098dd68d0d8970117"
}
]
}

View File

@ -0,0 +1,16 @@
{
"firewall_policies": [
{
"audited": false,
"description": "",
"firewall_rules": [
"8722e0e0-9cc9-4490-9660-8c9a5732fbb0"
],
"id": "c69933c1-b472-44f9-8226-30dc4ffd454c",
"name": "test-policy",
"project_id": "45977fa2dbd7482098dd68d0d8970117",
"public": false,
"tenant_id": "45977fa2dbd7482098dd68d0d8970117"
}
]
}

View File

@ -0,0 +1,8 @@
{
"firewall_policy": {
"name": "test-policy"
"firewall_rules": [
"8722e0e0-9cc9-4490-9660-8c9a5732fbb0"
],
}
}

View File

@ -0,0 +1,14 @@
{
"firewall_policy": {
"audited": false,
"description": "",
"firewall_rules": [
"8722e0e0-9cc9-4490-9660-8c9a5732fbb0"
],
"id": "c69933c1-b472-44f9-8226-30dc4ffd454c",
"name": "test-policy",
"project_id": "45977fa2dbd7482098dd68d0d8970117",
"public": false,
"tenant_id": "45977fa2dbd7482098dd68d0d8970117"
}
}

View File

@ -0,0 +1,5 @@
{
"firewall_rule_id": "7bc34b8c-8d3b-4ada-a9c8-1f4c11c65692",
"insert_after": "a08ef905-0ff6-4784-8374-175fffe7dade",
"insert_before": ""
}

View File

@ -0,0 +1,12 @@
{
"audited": false,
"description": "",
"firewall_rules": [
"acbdfead-eca2-4456-838c-8b531e47b9c7"
],
"id": "c9e15d6e-b6ba-4ef4-8715-985d1f100467",
"name": "policy2"
"public": false,
"project_id": "95573613ec554b4b8df9f2679c64557b",
"tenant_id": "95573613ec554b4b8df9f2679c64557b",
}

View File

@ -0,0 +1,3 @@
{
"firewall_rule_id": "7bc34b8c-8d3b-4ada-a9c8-1f4c11c65692"
}

View File

@ -0,0 +1,10 @@
{
"audited": false,
"description": "",
"firewall_rules": [],
"id": "c9e15d6e-b6ba-4ef4-8715-985d1f100467",
"name": "policy2"
"project_id": "95573613ec554b4b8df9f2679c64557b",
"public": false,
"tenant_id": "95573613ec554b4b8df9f2679c64557b",
}

View File

@ -0,0 +1,14 @@
{
"firewall_policy": {
"audited": false,
"description": "",
"firewall_rules": [
"8722e0e0-9cc9-4490-9660-8c9a5732fbb0"
],
"id": "c69933c1-b472-44f9-8226-30dc4ffd454c",
"name": "test-policy",
"project_id": "45977fa2dbd7482098dd68d0d8970117",
"public": false,
"tenant_id": "45977fa2dbd7482098dd68d0d8970117"
}
}

View File

@ -0,0 +1,8 @@
{
"firewall_policy": {
"firewall_rules": [
"a08ef905-0ff6-4784-8374-175fffe7dade",
"8722e0e0-9cc9-4490-9660-8c9a5732fbb0"
]
}
}

View File

@ -0,0 +1,15 @@
{
"firewall_policy": {
"audited": false,
"description": "",
"firewall_rules": [
"a08ef905-0ff6-4784-8374-175fffe7dade",
"8722e0e0-9cc9-4490-9660-8c9a5732fbb0"
],
"id": "c69933c1-b472-44f9-8226-30dc4ffd454c",
"name": "test-policy",
"project_id": "45977fa2dbd7482098dd68d0d8970117",
"public": false,
"tenant_id": "45977fa2dbd7482098dd68d0d8970117"
}
}

View File

@ -0,0 +1,9 @@
{
"firewall_rule": {
"action": "allow",
"destination_port": "80",
"enabled": true,
"name": "ALLOW_HTTP",
"protocol": "tcp"
}
}

View File

@ -0,0 +1,18 @@
{
"firewall_rule": {
"action": "deny",
"description": "",
"destination_ip_address": null,
"destination_port": null,
"enabled": true,
"id": "1fd59b2f-cc87-435f-a244-1df2c0cc3f70",
"ip_version": 4,
"name": "rule3",
"project_id": "95573613ec554b4b8df9f2679c64557b",
"protocol": null,
"public": false,
"source_ip_address": null,
"source_port": null,
"tenant_id": "95573613ec554b4b8df9f2679c64557b"
}
}

View File

@ -0,0 +1,20 @@
{
"firewall_rule": {
"action": "allow",
"description": "",
"destination_ip_address": null,
"destination_port": "80",
"enabled": true,
"firewall_policy_id": null,
"id": "8722e0e0-9cc9-4490-9660-8c9a5732fbb0",
"ip_version": 4,
"name": "ALLOW_HTTP",
"position": null,
"project_id": "45977fa2dbd7482098dd68d0d8970117",
"protocol": "tcp",
"public": false,
"source_ip_address": null,
"source_port": null,
"tenant_id": "45977fa2dbd7482098dd68d0d8970117"
}
}

View File

@ -0,0 +1,5 @@
{
"firewall_rule": {
"public": "true"
}
}

View File

@ -0,0 +1,20 @@
{
"firewall_rule": {
"action": "allow",
"description": "",
"destination_ip_address": null,
"destination_port": "80",
"enabled": true,
"firewall_policy_id": "c69933c1-b472-44f9-8226-30dc4ffd454c",
"id": "8722e0e0-9cc9-4490-9660-8c9a5732fbb0",
"ip_version": 4,
"name": "ALLOW_HTTP",
"position": 1,
"project_id": "45977fa2dbd7482098dd68d0d8970117",
"protocol": "tcp",
"public": true,
"source_ip_address": null,
"source_port": null,
"tenant_id": "45977fa2dbd7482098dd68d0d8970117"
}
}

View File

@ -0,0 +1,22 @@
{
"firewall_rules": [
{
"action": "allow",
"description": "",
"destination_ip_address": null,
"destination_port": "80",
"enabled": true,
"firewall_policy_id": "c69933c1-b472-44f9-8226-30dc4ffd454c",
"id": "8722e0e0-9cc9-4490-9660-8c9a5732fbb0",
"ip_version": 4,
"name": "ALLOW_HTTP",
"position": 1,
"project_id": "45977fa2dbd7482098dd68d0d8970117",
"protocol": "tcp",
"public": false,
"source_ip_address": null,
"source_port": null,
"tenant_id": "45977fa2dbd7482098dd68d0d8970117"
}
]
}