ACL Deny Rules

Currently only ACL allow rules are supported as part of Network ACLs. Default is to block all incoming and all outgoing traffic between tiers and between tiers and various gateways (including Public).  ACL deny rules will be supported through this feature. New fields "number"  and "action"will be added to rules to resolve conflicting rules.

NetworkACLContainer will be introduced to manage NetworkACLs.

NetworkACLContainer

NetworkACLContainer is a numbered list of  NetworkACLs that are evaluated in order, starting with the lowest numbered rule, to determine whether traffic is allowed in or out of any tier associated with the network ACL.

Instead of adding NetworkACLs directly to the tier, NetworkACLs will be added to the NetworkACLContainer. NetworkACLContainer can be assigned to multiple vpc tiers. Each tier can be associated with only one NetworkACLContainer. 

Tier will associated with a NetworkACLContainer at all times.

Default NetworkACLContainer

Each tier upon creation will be associated with default NetworkACLContainer.

Add/Remove networkACL to container

NetworkACLs can be added to or removed from the container using APIs createNetworkACL and removedNetworkACL APIs.

API changes

Existing API

createNetworkAcl

createNetwork

new API

updateNetworkACL

createNetworkAclContainer

Parameters:

Response:

deleteNetworkAclContainer

Parameters:

Response:

listNetworkAclContainers

Parameters:

Response:

replaceNetworkACLContainer

Parameters:

Response:

DB

New Tables

1. network_acl_container

Changes to existing tables

1. firewall_rules

action, number, container_id are mandatory for rule with purpose NetworkACL.

2. networks

Upgrade:

For each tier, a new network acl container is created during the upgrade, All ACLs that were assigned to this tier, will be part of the newly created network acl container. If there are no ACLs for any tier, it'll be associated with the default container.

All existing rules in firewall_rules table of type NetworkACL will have action "allow". Rule number will be sequentially assigned for all rules in each tier.