nova/api-ref/source/os-security-group-rules.inc
Sean Dague c9f5ad3bcf remove /v2.1/{tenant_id} from all urls
As discussed at summit, the version part of the URL is not really
relevant, or a thing a user should be filling out themselves, this
should instead be set by the service catalog and extracted from the
token.

This removes it's reference in all documented REST urls, and adds a
new section describing how one gets the base URL for all calls.

Change-Id: I4306b8c3de0225e54f3909dd8a1fb293c4e5944c
2016-06-03 08:47:33 -04:00

97 lines
2.4 KiB
ReStructuredText

.. -*- rst -*-
.. needs:example_verification
.. needs:body_verification
====================================================
Rules for security group (os-security-group-rules)
====================================================
Creates and deletes security group rules.
Create Security Group Rule
==========================
.. rest_method:: POST /os-security-group-rules
Creates a rule for a security group. Either ``cidr`` or ``group_id`` must be
specified when creating a rule.
.. note::
nova-network only supports ingress rules. If you want to define egress
rules you must use the Neutron networking service.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- security_group_rule: security_group_rule
- parent_group_id: parent_group_id
- ip_protocol: ip_protocol
- from_port: from_port
- to_port: to_port
- cidr: secgroup_rule_cidr
- group_id: group_id
.. TODO(sdague): we currently have no samples here
**Example Create security group rule: JSON request**
.. literalinclude:: ../../doc/api_samples/os-security-group-rules/security-group-rule-create-req.json
:language: javascript
Response
--------
The ``group`` is empty if ``group_id`` was not provided on the request.
The ``ip_range`` is empty if ``cidr`` was not provided on the request.
.. rest_parameters:: parameters.yaml
- security_group_rule: security_group_rule
- ip_protocol: ip_protocol
- from_port: from_port
- to_port: to_port
- ip_range: secgroup_rule_ip_range
- cidr: secgroup_rule_cidr
- id: secgroup_rule_id
- group: group
- parent_group_id: parent_group_id
- name: name
- tenant_id: secgroup_tenant_id_body
.. TODO(sdague): we currently have no samples here
**Example Create security group rule: JSON response**
.. literalinclude:: ../../doc/api_samples/os-security-group-rules/security-group-rule-create-resp.json
:language: javascript
Delete Security Group Rule
==========================
.. rest_method:: DELETE /os-security-group-rules/{security_group_rule_id}
Deletes a security group rule.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403), itemNotFound(404), conflict(409)
Request
-------
.. rest_parameters:: parameters.yaml
- security_group_rule_id: security_group_rule_id
Response
--------
There is no body content for the response of a successful DELETE query.