Address groups for firewall policies (original) (raw)

An address group contains multiple IP addresses, IP address ranges in CIDR format, or both. Each address group can be used by multiple resources, such as rules in Cloud NGFW firewall policies or rules in Cloud Armor security policies.

Updates to an address group are automatically propagated to the resources that reference the address group. For example, you can create an address group containing a set of trusted IP addresses. To change the set of trusted IP addresses, you update the address group. Your updates to the address group are reflected in each associated resource automatically.

Specifications

Address group resources have the following characteristics:

<containerType>/<containerId>/locations/<location>/addressGroups/<address-group-name>  

For example, a global address group example-address-group in project myprojecthas the following unique 4-tuple identifier:

projects/myproject/locations/global/addressGroups/example-address-group  

Types of address groups

Address groups are classified based on their scope. The scope identifies the level at which the address group is applicable in theresource hierarchy. Address groups are categorized into the following types:

An address group can be either project-scoped or organization-scoped, but not both.

Project-scoped address groups

Use project-scoped address groups when you want to define your own list of IP addresses to be used within a project or a network to block or allow a list of changing IP addresses. For example, if you want to define your own threat intelligence list and add it to a rule, create an address group with the required IP addresses.

The container type for project-scoped address groups is always set to project. For more information about how to create and modify project-scoped address groups, see Use project-scoped address groups.

Organization-scoped address groups

Use organization-scoped address groups when you want to define a central list of IP addresses that can be used in high-level rules to provide consistent control for the entire organization and reduce the overhead for individual network and project owners to maintain common lists, such as trusted services and internal IP addresses.

The container type for organization-scoped address groups is always set toorganization. For more information about how to create and modify organization-scoped address groups, seeUse organization-scoped address groups.

IAM roles

To create and manage an address group, you need the Compute Network Admin role (roles/compute.networkAdmin). You can also define a custom role with an equivalent set of permissions.

The following table provides a list of Identity and Access Management (IAM) permissions required to perform a set of tasks on address groups.

Task IAM role name IAM permissions
Create and manage address groups Compute Network Admin (roles/compute.networkAdmin) networksecurity.addressGroups.*
Discover and view address groups Compute Network User (roles/compute.networkUser) networksecurity.addressGroups.list networksecurity.addressGroups.get networksecurity.addressGroups.use

For more information about which roles include specific IAM permissions, see theIAM roles and permissions index.

How address groups work with firewall policies

Address groups simplify the configuration and maintenance of firewall policies. You can share the IP addresses across firewall policies and define more complex, consistent, and robust firewall policies for your network with reduced maintenance overhead. Consider the following additional specifications when you use address groups with firewall policies:

What's next